Weekly GitHub Report for Tensorflow: March 18, 2025 - March 25, 2025 (12:44:47)
Weekly GitHub Report for Tensorflow
Thank you for subscribing to our weekly newsletter! Each week, we deliver a comprehensive summary of your GitHub project's latest activity right to your inbox, including an overview of your project's issues, pull requests, contributors, and commit activity.
Table of Contents
I. News
1.1 Recent Version Releases:
The current version of this repository is v2.19.0
1.2 Version Information:
The TensorFlow 2.19.0 release, created on March 5, 2025, introduces breaking changes in the LiteRT
(a.k.a. tf.lite
) API, including the transition of certain C++ constants to const references for better compatibility and a deprecation warning for the tf.lite.Interpreter
in the Python API, which will be removed in version 2.20. Notable improvements include support for bfloat16
in the tfl.Cast
operation, and the discontinuation of publishing libtensorflow
packages, although they remain accessible via PyPI.
II. Issues
2.1 Top 5 Active Issues:
We consider active issues to be issues that that have been commented on most frequently within the last week. Bot comments are omitted.
-
TensorFlow on RTX 5090: This issue is about a bug in TensorFlow version 2.20.0.dev20250314, where it fails to work with the RTX 5090 GPU on a Windows 11 system using WSL2 and Ubuntu 22.04.5 LTS. The user has attempted various methods to resolve the issue, including building from source and using environment scripts, but continues to encounter errors related to CUDA compatibility and compute capability discrepancies.
- The comments section reveals a collaborative effort to resolve the issue, with users sharing their experiences and solutions, including attempts to build TensorFlow with updated dependencies and configurations. Despite some progress, such as successful builds and partial functionality, challenges remain, and users express a desire for official support for the RTX 5090 in future TensorFlow releases.
- Number of comments this week: 18
-
It doesn't support on python3.13: This issue highlights the lack of support for Python 3.13 in TensorFlow version 2.17, which results in installation failures on macOS Sequoia ARM. The problem arises because TensorFlow's release cycle does not align with Python's, leading to a delay in support for new Python versions.
- The comments discuss the recurring issue of TensorFlow's delayed support for new Python versions, with users expressing frustration over the lack of compatibility with Python 3.13. Some users suggest workarounds like downgrading Python, while others criticize the TensorFlow team's release process and call for better synchronization with Python's release schedule. There are also mentions of specific technical challenges and dependencies that complicate the support for new Python versions.
- Number of comments this week: 4
-
Could not build Objective-C module 'TensorFlowLiteSelectTfOps': This issue is about a compile error encountered when trying to build the 'TensorFlowLiteSelectTfOps' module in an iOS project using Xcode 16.2, specifically related to the configuration of CocoaPods and linker flags. The user has attempted to resolve the issue by updating the Podfile and using specific linker flags, but the problem persists even after installing the latest version of the module.
- The comments discuss the potential cause of the compile error, suggesting it may be due to incorrect CocoaPods configuration and advising to update the Podfile with stable versions. Despite following these suggestions, the user reports that the issue remains unresolved. Another user is asked to look into the problem, and it is noted that the error persists across different versions.
- Number of comments this week: 4
-
Disabling GPU delegate for particular tflite nodes: This issue involves a problem with the OpenCL GPU delegate in TensorFlow Lite, where unsupported floor operations cause the entire graph delegation to fail, and the user seeks a way to disable GPU delegation specifically for nodes involving floor operations. The user has reproduced the issue with TensorFlow version 2.17.1 on a Linux Ubuntu 18.04 ARM platform and is looking for a solution to prevent the entire delegation from failing due to unsupported operations.
- The user initially received a suggestion to use a custom delegate with operation filtering to bypass unsupported floor operations, but found that the existing delegates did not implement the necessary interface. After figuring out how to disable the floor operation delegation, the user encountered additional unsupported operations, leading to further errors. The user expressed confusion about why the entire delegation fails when a single node fails and requested documentation on supported tensor types for operations, indicating a need for both a bug fix and a potential feature request.
- Number of comments this week: 3
-
API Doc Error for tf.train.ClusterSpec API: This issue highlights a bug in the TensorFlow 2.18 API documentation for the
tf.train.ClusterSpec
where the expected order of jobs in theClusterDef
does not match the actual output, causing a test failure. The test anticipates the first job to be named "worker" based on the insertion order of the dictionary, but it instead appears as "ps", contradicting the API documentation examples.- The comments discuss reproducing the issue on Colab with TensorFlow 2.18 and the nightly version, with a user providing a gist for reference. Another user offers a Colab link with two potential solutions to address the error. The original poster is open to further assistance in resolving the issue.
- Number of comments this week: 3
2.2 Top 5 Stale Issues:
We consider stale issues to be issues that has had no activity within the last 30 days. The team should work together to get these issues resolved and closed as soon as possible.
- Improper use of PluggableDevice data pointer: This issue involves a bug in TensorFlow where the
TensorListFromTensor
operation incorrectly assumes that the data pointer from a PluggableDevice tensor is always set to a virtual address space, allowing it to add an offset to the pointer. This assumption is incorrect for all PluggableDevices, leading to potential errors, and similar issues have been observed in distributed training scenarios where PluggableDevice data pointers are offset during copying. - Conv2D computes wrongly in Windows OS: This issue reports a bug in the TensorFlow library where the Conv2D layer produces incorrect output shapes when executed on Windows 10, despite functioning correctly on Linux with the same code. The problem is highlighted by a discrepancy in the expected and actual output shapes, and it is suggested that this issue might be related to a similar problem previously identified in the Conv3D layer, as both share the same parent class, BaseConv.
- Aborted (core dumped) with
tf.raw_ops.LoadAndRemapMatrix
: This issue involves a bug in TensorFlow version 2.16.1, where the functiontf.raw_ops.LoadAndRemapMatrix
causes an "Aborted (core dumped)" error under specific input conditions on an Ubuntu 20.04 system with Python 3.11. The problem arises when the function is called with certain parameters, leading to a failed check in the TensorFlow framework that results in a dimension mismatch error, as indicated by the log output. - Check failed: ret == 0 (11 vs. 0)Thread tf_data_private_threadpool creation via pthread_create() failed. Aborted (core dumped): This issue involves a bug encountered when attempting to run a denoising autoencoder using TensorFlow version 2.15.0.post1 on a Rocky Linux 8.9 system with an NVIDIA A100-SXM4-80GB GPU. The problem arises when the user tries to execute the model on a GPU with real data, resulting in a failure to create a thread pool via
pthread_create()
, leading to an error message "Check failed: ret == 0 (11 vs. 0)Thread tf_data_private_threadpool creation via pthread_create() failed. Aborted (core dumped)." - TF-TRT Warning: Could not find TensorRT: This issue involves a user experiencing difficulties with TensorFlow on an Ubuntu 22.04 system, specifically encountering a "Could not find TensorRT" warning while attempting to use TensorFlow with a GeForce RTX 3050 TI GPU. The user has tried various troubleshooting steps, including uninstalling and reinstalling drivers, but continues to face challenges, which is impacting their ability to focus on their Machine Learning coursework.
2.3 Open Issues
This section lists, groups, and then summarizes issues that were created within the last week in the repository.
Issues Opened This Week: 12
Summarized Issues:
- Build and Compilation Errors: Users are encountering various build and compilation errors across different platforms and configurations. One issue involves a 'LNK1120: 12 unresolved externals' error when building TensorFlow Lite C library with CMake on Windows, despite successful builds on Ubuntu, indicating potential discrepancies in the build process. Another issue involves a compile error related to the 'TensorFlowLiteSelectTfOps' module in an iOS project using Xcode 16.2, likely due to incorrect CocoaPods configuration.
- Model Conversion and Inference Discrepancies: Users are facing issues with model conversion and inference discrepancies when using TensorFlow. One issue describes a TensorFlow model that, when converted from FP32 to INT8 format, only predicts a single class instead of multiple classes, indicating a potential issue with the quantization process. Another issue involves significant discrepancies in inference results between a Keras model and its TFLite converted version using EfficientNetB0 for regression tasks, with differences exceeding 1000%.
- Custom Model Implementation Bugs: There are bugs related to custom model implementations in TensorFlow. One issue reports a bug in the
StreamingModel
class where thecall
method is not implemented correctly, leading to a compilation error. Another issue involves a similar bug in a custom Keras model calledStreamingModel
, where thecall()
method is not implemented, resulting in aNotImplementedError
.
- Feature Requests for TensorFlow Enhancements: Users are requesting new features to enhance TensorFlow's capabilities. One request is for TensorFlow to add support for a SeparableConv2DTranspose operation, crucial for efficient depthwise transposed convolutions. Another request involves adapting TensorFlow Recommenders Addons with TensorFlow's ParameterServerStrategy V2 to address compatibility problems.
- Runtime and Execution Errors: Users are experiencing runtime and execution errors with TensorFlow. One issue involves a failure to load the native TensorFlow runtime on a Windows 10 system using Python 3.12.1, due to an ImportError caused by a DLL initialization routine failure. Another issue involves a bug where the user is unable to initialize a TPU in Google Colab using TensorFlow version 2.18.0, resulting in an "InvalidArgumentError."
- Compilation Errors on Specific Platforms: There are compilation errors specific to certain platforms. One issue involves a compilation failure when using TensorFlow Lite 2.19 on Raspberry Pi OS Bookworm due to a syntax error in the
TfLiteQuantizationType
definition, which did not occur in version 2.18.
- Performance Issues with Custom Models: Users are encountering performance issues with custom-trained models. One issue involves a custom-trained FastSpeech2 model for Chinese text-to-speech synthesis using TensorFlowTTS, where the synthesized audio is unexpectedly quiet and distorted compared to a pre-trained model, raising questions about the need for retraining the MelGAN vocoder.
2.4 Closed Issues
This section lists, groups, and then summarizes issues that were closed within the last week in the repository. This section also links the associated pull requests if applicable.
Issues Closed This Week: 12
Summarized Issues:
- Distributed Training NaN Loss Issue: This issue involves a bug in TensorFlow where training a distributed model using either MirroredStrategy or MultiWorkerMirroredStrategy results in the loss jumping to NaN on the 61st batch. The problem does not occur when training on a single GPU or using TensorFlow version 2.13.1, and is reproducible across different datasets, model architectures, and batch sizes.
- Stateless Uniform Function Exception: A bug in TensorFlow versions 2.18 and 2.19.0rc0 causes the function
tf.random.stateless_uniform()
to raise an exception when used withtensorflow-metal
on macOS. This occurs specifically whenminval
andmaxval
are provided, due to an argument shape mismatch.
- Build and Import Errors: Users encounter various build and import errors across different TensorFlow versions and platforms. These include a symbol lookup error when building from source on Linux, ImportErrors due to DLL issues on Windows, and compatibility problems requiring updates to dependencies like the MSVC 2019 redistributable.
- Floating Point Exception in Max Pool: A bug in the TensorFlow nightly version 2.20.0-dev20250302 results in a floating point exception when executing the
tf.nn.max_pool
function on a specific input tensor. This issue is not observed in the stable version of TensorFlow.
- Conv1D Layer Error: TensorFlow 2.14.1 has a bug where using Conv1D layers with a kernel size of 1 results in a small error when processing data iteratively over the time dimension. This occurs particularly with large filters and features, despite identical weights being loaded into the layers.
- Argmin Function Misunderstanding: A user reports a bug where the
tf.math.argmin()
function in TensorFlow returns the wrong index for the minimum value in a tensor. However, the user later realizes a misunderstanding in the use ofargmin
.
- Misreported PCL Build Failure: A build failure in the Point Cloud Library (PCL) when using vcpkg on a Windows platform was mistakenly reported in the TensorFlow repository. The errors involve the
glsl_shader.cpp
file related to the 'gluErrorString' identifier not being found and an ambiguous 'operator <<'.
2.5 Issue Discussion Insights
This section will analyze the tone and sentiment of discussions within this project's open and closed issues that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.
Based on our analysis, there are no instances of toxic discussions in the project's open or closed issues from the past week.
III. Pull Requests
3.1 Open Pull Requests
This section provides a summary of pull requests that were opened in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.
Pull Requests Opened This Week: 9
Key Open Pull Requests
1. Qualcomm AI Engine Direct - Compile QINT16 as QUINT16: This pull request focuses on modifying the TensorFlow project to compile QINT16 data types as QUINT16 within the Qualcomm AI Engine Direct, and it is part of a larger effort to separate changes for improved review, with all associated tests passing successfully.
- URL: pull/89337
- Merged: No
- Associated Commits: ee416
2. Qualcomm AI Engine Direct - Set HTP to burst mode: This pull request aims to modify the Qualcomm AI Engine Direct by setting the High Throughput Processing (HTP) to operate in burst mode, as indicated by the commit message and title, although it has not yet been merged into the main project.
- URL: pull/89342
- Merged: No
- Associated Commits: f2e47
3. Fix: Ensure boolean_mask_v2() only accepts boolean dtype for mask: This pull request addresses an issue in the tf.boolean_mask_v2()
function by ensuring that only boolean tensors are accepted as masks, raising a TypeError
if the mask tensor is not of boolean dtype, thereby preventing unintended behavior and enforcing correct usage.
- URL: pull/89370
- Merged: No
- Associated Commits: 5e689
Other Open Pull Requests
- Function Optimization: This pull request optimizes the process by modifying the code to call the function
exp_on_negative_values()
only once. The result is stored in a temporary buffer for later scaling operations, thereby improving efficiency.
- Compilation Error Resolution: This pull request resolves a conflict between
absl::Status
in Abseil and the#define Status int
macro in Xlib.h. It does so by undefiningVK_USE_PLATFORM_XLIB_KHR
to exclude the Xlib.h header file from vulkan.h, resolving compilation errors on the Chromium linux-asan-v8-arm-dbg try bots.
- Documentation Update: This pull request addresses the issue of seven broken documentation links in the
text_classification.md
file. The links are updated to new functional LiteRT webpage links and are currently awaiting review and merging.
- Qualcomm AI Engine Direct Enhancements: This pull request enhances the Qualcomm AI Engine Direct component by removing an unused variable from the QC vendor folder. It modifies the files
qnn_compiler_plugin.cc
andsplit_op_builder.cc
, passing all 115 tests across 5 test suites.
- Qualcomm AI Engine Direct Operation Builders: This pull request introduces additional operation builders for the Qualcomm AI Engine Direct in TensorFlow. It adds support for ElementwiseFloorDiv, ElementwiseNotEqual, ElementwiseLogistic, Pad PadV2, and MaxPool2d operations.
- ROCm Build Process Update: This pull request addresses a minor update for the ROCm build process by replacing the deprecated "pipes.quote" with "shlex.quote". This change resolves a build failure issue.
3.2 Closed Pull Requests
This section provides a summary of pull requests that were closed in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.
Pull Requests Closed This Week: 14
Key Closed Pull Requests
1. Adds f16 and bf16 type support for tfl.strided_slice, tfl.gather_nd, tfl.gather and tfl.less ops: This pull request adds support for the f16 and bf16 data types to the TensorFlow Lite operations tfl.strided_slice, tfl.gather, tfl.gather_nd, and tfl.less, along with corresponding tests, to enhance the framework's functionality and datatype compatibility.
- URL: pull/83717
- Merged: Yes
2. Supports more legalizations and multi-partition: This pull request aims to enhance the TensorFlow project by adding support for more legalizations, including Batch_MatMul, Mul, and Fully_Connected operations, as well as introducing utilities to support multi-partitioning, although it was not merged.
- URL: pull/88103
- Merged: No
3. Fixes tensorflow/tensorflow#70581.: This pull request addresses the issue tensorflow/tensorflow#70581 by allowing the caller to specify the environment context (inside a Kubernetes cluster or outside) when using the KubernetesClusterResolver
, and includes fixes for linting errors and a test for verifying executable locations, although it was ultimately not merged.
- URL: pull/70691
- Merged: No
Other Closed Pull Requests
- oneDNN Test Cases Refinement: This pull request refines the oneDNN test cases in the TensorFlow project by removing the
#ifdef ENABLE_MKL
constraint. It allows these tests to run with the stock TensorFlow configuration without requiring the--config=mkl
flag and includes additional changes such as adding header dependencies for pooling operation GPU tests.
- tf_env Script Stabilization: This pull request addresses the stabilization and cleanup of the
tf_env
script by fixing numerous bugs and outdated code. It enhances its reliability and readability, ensuring it handles common bash script issues, such as spaces in the path to Python.
- Qualcomm AI Engine Direct Enhancements: Multiple pull requests focus on enhancing the Qualcomm AI Engine Direct integration. These include addressing modifications to TensorWrapper objects, supporting transformation from FC layers to CONV2D operations, and adding a known SoC model based on the SoC ID. These changes ensure correct reflection of modifications and successful compilation and execution tests.
- Configuration Management Flexibility: This pull request allows for empty configuration values, such as
CC_OPT_FLAGS
, to be supplied from the environment. It provides flexibility in configuration management for the TensorFlow project.
- Documentation Corrections: Several pull requests address documentation errors in the TensorFlow project. These include correcting typographical errors, spelling corrections in the README.md file, and enhancing error handling in
tf.keras.losses.SparseCategoricalCrossentropy
.
- Unused Tests Removal: This pull request involves the removal of unused tests related to the Qualcomm AI Engine Direct within the TensorFlow project. It ensures that all 115 tests from 5 test suites passed successfully and was merged into the main codebase.
- Unmerged Proposed Changes: This pull request involves proposed changes to the
array_ops.py
file in the TensorFlow project. However, it was not merged into the main codebase.
3.3 Pull Request Discussion Insights
This section will analyze the tone and sentiment of discussions within this project's open and closed pull requests that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.
Based on our analysis, there are no instances of toxic discussions in the project's open or closed pull requests from the past week.
IV. Contributors
4.1 Contributors
Active Contributors:
We consider an active contributor in this project to be any contributor who has made at least 1 commit, opened at least 1 issue, created at least 1 pull request, or made more than 2 comments in the last month.
If there are more than 10 active contributors, the list is truncated to the top 10 based on contribution metrics for better clarity.
Contributor | Commits | Pull Requests | Issues | Comments |
---|---|---|---|---|
Venkat6871 | 5 | 5 | 0 | 40 |
weilhuan-quic | 5 | 4 | 0 | 34 |
chunhsue | 14 | 7 | 0 | 18 |
maludwig | 2 | 1 | 1 | 31 |
mihaimaruseac | 4 | 0 | 0 | 29 |
gaikwadrahul8 | 4 | 4 | 0 | 20 |
jiunkaiy | 7 | 3 | 0 | 17 |
wonjeon | 9 | 7 | 0 | 6 |
LakshmiKalaKadali | 5 | 1 | 0 | 5 |
belitskiy | 8 | 1 | 0 | 1 |