Weekly GitHub Report for Tensorflow: January 04, 2025 - January 11, 2025
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.18.0
1.2 Version Information:
The TensorFlow 2.18.0 release, created on October 21, 2024, introduces several key updates, including the addition of a fourth parameter to the TfLiteOperatorCreate
function for a cleaner API, the disabling of TensorRT support in CUDA builds, and the introduction of Hermetic CUDA for more reproducible builds. Notably, TensorFlow now supports NumPy 2.0 by default, with changes in type promotion rules, and enhancements in tf.lite
such as support for TensorType_INT4
and TensorType_INT16
in various operations.
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 not supported on Windows + ARM CPUs: This issue highlights a problem with TensorFlow not being supported on Windows systems with ARM CPUs, specifically when attempting to import TensorFlow on a Windows 11 machine with a Snapdragon X Plus processor. The user reports successful installation but encounters an ImportError related to DLL load failure, indicating a lack of support for the ARM architecture on Windows in the current TensorFlow version.
- The comments discuss the issue being initially marked as a duplicate of an older problem related to outdated Intel CPUs, but it is later clarified that the current issue is distinct due to the ARM architecture. The conversation reveals that TensorFlow does not provide support for Windows on ARM CPUs, and suggestions are made to try using the Linux wheel via WSL or to use Google Colab as alternatives. The discussion also explains the concept of "missing wheels" and the challenges of supporting various CPU architectures.
- Number of comments this week: 10
-
How to run TFLite benchmark with QNN delegate in Android: This issue is a feature request regarding the inability to successfully run a TensorFlow Lite benchmark with the QNN delegate on an Android device, despite following the setup instructions and using the correct TensorFlow version. The user has attempted to execute the benchmark using various commands and configurations, but consistently encounters errors related to the QNN delegate, specifically a failure to create a device handle for the backend.
- The comments involve a request for more detailed information on the build process, including the use of Docker, NDK/SDK versions, and build commands. The user provides a comprehensive response detailing their setup and build steps, including the use of macOS and specific Bazel configurations. Another contributor attempts a similar setup on Linux with a different TensorFlow version but encounters the same issue, prompting a request for further assistance from another team member.
- Number of comments this week: 4
-
GPU Delegate for Object detection and Image classification from Tensorflow lite for Android : This issue involves a user experiencing significant lag and crashes when attempting to use the GPU delegate for image classification in an Android application using TensorFlow Lite. The user is seeking advice on how to properly implement GPU acceleration to improve performance and avoid the app crashing, particularly on Pixel devices.
- The comments suggest checking the official documentation for GPU delegate support and ensuring model compatibility. The user is advised to add specific dependencies to the
build.gradle
file, but despite these efforts, the issue persists with app lagging and crashes. The user shares a crash report and mentions the inability to provide a GitHub repository due to privacy, but offers to share thebuild.gradle
file for further assistance. - Number of comments this week: 4
- The comments suggest checking the official documentation for GPU delegate support and ensuring model compatibility. The user is advised to add specific dependencies to the
-
It doesn't support on python3.13: This issue highlights the lack of support for Python 3.13 in TensorFlow version 2.17, as users encounter errors when attempting to install it 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, which has been a recurring issue since Python 3.8.
- The comments discuss the challenges of aligning TensorFlow's release cycle with Python's, the importance of supporting Python 3.13 due to its adoption in major distributions like Fedora 41, and the technical and organizational hurdles in updating dependencies and build processes. Users express frustration over the delay and suggest improvements, while others clarify the complexities involved and the expected timeline for future support.
- Number of comments this week: 3
-
TFLITE NMS kernel Inconsistent Outputs and Out of Memory issues: This issue reports a bug in the TensorFlow Lite (TFLITE) Non-Max Suppression (NMS) kernel, where its output is inconsistent with the TensorFlow NMS output, particularly due to the appending of zeros in the "selected_indices" output, which leads to out-of-memory (OOM) errors on Android devices. The user requests a fix to ensure that the TFLITE NMS output matches the TensorFlow NMS output, as the current behavior causes slow computation and memory issues, especially with large "max_output_size" values.
- The comments discuss labeling the issue for the Lite component, acknowledge the out-of-memory problem when running the provided code, and suggest reducing the 'max_output_size' for debugging. There is a request for further inspection of the issue, indicating ongoing investigation and communication.
- 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.
As of our latest update, there are no stale issues for the project this week.
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: 14
Summarized Issues:
- TensorFlow Build Configuration Issues: Users are encountering challenges with TensorFlow build configurations, particularly when trying to use local CUDA libraries instead of hermetic ones, which introduces unwanted dependencies. Additionally, there are issues with building TensorFlow Lite for iOS due to undefined symbols for the arm64 architecture, and a compilation error on Windows related to incorrect file path handling.
- Compatibility and Conversion Errors: Several issues involve compatibility and conversion errors, such as a broken compatibility with the tensorflow-metal plugin on MacOS 15.2 using an Apple M2 Max GPU, and a RuntimeError during TensorFlow to TensorFlow Lite conversion due to a non-power-of-two condition. There is also an unresolved custom operation error when converting a T5 model from Huggingface to TFLite for Android.
- TensorFlow Model and Layer Bugs: Users are reporting bugs in TensorFlow models and layers, such as the XLA compiler failing to compile the
tf.keras.layers.Conv2D
layer withpadding='valid'
, and a bug in thefit
method where using dictionaries to load data results in incorrect ordering. Additionally, there is a bug in TensorFlow version 2.19.0-dev20250105 where saving a Keras model withinclude_optimizer=False
does not exclude the optimizer.
- TPU and GPU Profiling Issues: There are issues related to TPU and GPU profiling, including difficulties connecting to a TPU v4-32 from a Cloud VM due to potential metadata retrieval problems, and a bug in GPU profiling where memory events are not captured when profiling a remote worker.
- Memory and Resource Management Problems: Users are experiencing memory and resource management problems, such as a memory allocation issue in TensorFlow 2.18.0 on an Ubuntu system using WSL2, where a virtual GPU exceeds its memory limit during training. Additionally, there is a failure during the Gradle sync process in the Digit Classifier Codelab due to a dependency resolution error.
- TensorFlow Operation Errors: A bug in TensorFlow version 2.17.0 involves the
tf.math.floormod
operation resulting in an internal error when executed on two float-type tensors using a GPU, whereas it functions correctly with integer types on a GPU and with float types on a CPU.
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: 15
Summarized Issues:
- TensorFlow Version Compatibility Issues: Users have reported various compatibility issues across different TensorFlow versions. One issue involves a
FAILED_PRECONDITION
error when saving atf.Module
with a Keras model in TensorFlow 2.17.0, which works in version 2.15.0. Another issue highlights the inability to use CUDA 12.1 with TensorFlow 2.17.0 on Windows 10, despite successful use with other frameworks.
- TensorFlow Lite Compilation and Conversion Problems: Several issues have been reported regarding TensorFlow Lite, including a linker error in the
label_image
example due to incorrect library naming in CMake, and problems with model conversion resulting in incorrect results or reduced accuracy. These issues highlight challenges in cross-compilation and model conversion processes.
- Build and Compilation Errors: Users have encountered build failures and compilation errors when working with TensorFlow on different platforms. One issue involves missing header files when compiling TensorFlow with GPU support on Windows 11, while another involves incomplete element types in the XNNPACK library on Ubuntu 18.04.
- Algorithm Convergence and Model Training Issues: Users have reported issues with algorithm convergence and unexpected model training behavior. An Actor-Critic algorithm in TensorFlow 1.x fails to converge, prompting a suggestion to migrate to TensorFlow 2.x. Additionally, a custom Siamese Network outputs the same class for every instance when using
tf.data.Dataset
, unlike when the entire dataset is loaded into memory.
- TensorFlow Functionality and Import Errors: Users have experienced errors related to TensorFlow functionality and imports. One issue involves TensorFlow 2.18.0 not recognizing certain functions in PyCharm on Ubuntu 22.04, while another involves an ImportError on Windows 11 after reinstalling Python and Anaconda, indicating a DLL initialization problem.
- Cross-Compilation and Toolchain Compatibility: A compatibility problem with the cross-compilation toolchain for ARMv6 on the Raspberry Pi Zero has been reported, where the toolchain targets ARMv7, causing an "Illegal instruction" error. This highlights the need for an ARMv6-compatible toolchain for successful execution.
- TensorFlow Lite GPU Support and Optimization: A user has sought support for enabling GPU acceleration on a device with an Adreno 750 GPU using TensorFlow Lite, where the compatibility check fails. The user is seeking guidance on proceeding with GPU support or optimizing CPU usage.
- TensorFlow Method and Operation Bugs: Bugs have been reported in TensorFlow methods and operations, such as the
BackupAndRestore
method requiring the model to be built before callingfit()
, and thetf.math.floormod
operation encountering an internal error with float-type tensors in version 2.17.0.
- C++ Deprecation Warnings: The deprecation of
std::is_pod
in C++20 has caused build warnings when compiling TensorFlow Lite, suggesting a replacement withis_standard_layout && is_trivial
to resolve the warnings. This issue highlights the need for code updates to comply with newer C++ standards.
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.
- Tensortflow import issue after installation
- Toxicity Score: 0.55 (Dispute over issue closure, Repeated issue opening, Tension in responses.)
- This GitHub conversation involves several users, including Manoj Nayak, Dhimant, and Mihai Maruseac, discussing a TensorFlow installation issue. Manoj suggests checking the Python version, while Dhimant expresses difficulty in finding the correct version and mentions trying different configurations without success. Mihai identifies the issue as a duplicate and advises against opening new issues without new information, which Dhimant disputes, claiming previous issues were closed prematurely. The conversation becomes tense as Dhimant requests the issue to be reopened, and Mihai warns against spamming by opening multiple issues.
III. Pull Requests
3.1 Open Pull Requests
This section lists and summarizes pull requests that were created within the last week in the repository.
Pull Requests Opened This Week: 3
Key Open Pull Requests
1. Updated rules_python patch to get 3.13.1 python: This pull request updates the rules_python patch to incorporate Python version 3.13.1 in the TensorFlow project, as indicated by the commit message and the involvement of a collaborator tagged as @hawkinsp.
- URL: pull/84481
- Merged: No
- Associated Commits: d16338518baeefab0048057b33c56193582db5b7
2. Add div/truediv support for bool-val tensor.: This pull request aims to add support for division and true division operations on boolean-valued tensors in TensorFlow by casting them to int32, ensuring compatibility with NumPy's behavior for such operations.
- URL: pull/84491
- Merged: No
- Associated Commits: 928a7a3ce18a8eb5d2ea4af78af911f6758158a2
3. Replacement PR for #76210 Add support for quint8 type for uniform_quantize and uniform_ dequantize ops: This pull request introduces support for the quint8 data type in the uniform_quantize and uniform_dequantize operations within the TensorFlow project, serving as a replacement for a previous pull request (#76210) and including several commits for additional fixes and improvements.
- URL: pull/84497
- Merged: No
- Associated Commits: 7472fadf0a725210c632aeb87b2f54bed6a230b9, 0a389391c6a6068cd81b882f71c6b79388910c8e, d5b2503a0655524c3b17eb3ab75f8206e9a4f8ed, a42b9941c1932a1f9ac81c79b94693033b1875c2, 3034da0218dfb8c8628eee927d46251f533a1ee2, 4c3c7b8c107a8ee1f6545fb9c33c72bca98ff1e1
3.2 Closed Pull Requests
This section lists and summarizes pull requests that were closed within the last week in the repository. Similar pull requests are grouped, and associated commits are linked if applicable.
Pull Requests Closed This Week: 18
Key Closed Pull Requests
1. Fix checkfail in ResourceSparseApplyKerasMomentum: This pull request addresses a check failure in the ResourceSparseApplyKerasMomentum
operation by proposing a validation check to ensure that the var
or accum
arguments are of dtype float32, potentially resolving issue #63720.
- URL: pull/63784
- Merged: No
- Associated Commits: 79c14a428d8255733699b423dd58f3fcceb46ca4
2. Unregister complex dtypes for Round OP: This pull request addresses an issue in the TensorFlow project by unregistering complex data types and certain integer types (int8 and int16) for the Round operation, as these types cause errors, and instead ensures that the operation is registered only for supported real data types like float and specific integer types, potentially resolving issue #65317.
- URL: pull/65396
- Merged: No
- Associated Commits: 822db8ac37439d258ef4e0ad3364667e96f97f44, b8b56d2422cded257d37e86b7242534fd94f6468
3. [NFC][ROCM] Replaced DoMatmul with ExecuteOnStream call for gpu_blas_lt: This pull request refactors the gpu_blas_lt interface in the ROCM platform by replacing the DoMatmul function with the more robust ExecuteOnStream call, which automatically handles valid data type combinations, thereby simplifying the interface and improving support for hipblas-lt.
- URL: pull/73926
- Merged: Yes
- Associated Commits: e20ec8d81ee4084cd562e4df35c0cfccfaf8417e, fe9524daec1ab517e6730bf755ff6173a4da1dc9
Other Closed Pull Requests
- Real-Time Optimization in TensorFlow: The pull request introduces a Real-Time Optimization feature to TensorFlow's Grappler optimizers, aiming to enhance computational graph performance by dynamically adjusting optimizations based on real-time metrics. It includes a new
RealTimeOptimizer
class, integration with the meta optimizer framework, new optimization strategies, and comprehensive unit tests to ensure stability and performance under various conditions.
- Fixes for TensorFlow Lite on Windows: Several pull requests address issues related to building TensorFlow Lite on Windows, including fixing linker errors and ensuring correct symbol exportation. These changes improve the build process and functionality of TensorFlow Lite on Windows platforms by resolving issues with CMake and symbol exports.
- Documentation Improvements: Multiple pull requests focus on enhancing TensorFlow's documentation, including fixing broken links, adding documentation for Eager Monitoring Counter bindings, and correcting typos in docstrings. These updates aim to improve the clarity and usability of TensorFlow's documentation for developers.
- Enhancements to TensorFlow's Functionality: Pull requests have been made to enhance TensorFlow's functionality, such as adding a NumPy-compliant multiplication operator for boolean tensors and introducing a custom optimizer. These changes aim to improve TensorFlow's compatibility with NumPy and provide more customizable optimization options.
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 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 |
---|---|---|---|---|
mihaimaruseac | 5 | 0 | 0 | 66 |
Venkat6871 | 2 | 2 | 0 | 42 |
gaikwadrahul8 | 4 | 4 | 0 | 28 |
tilakrayal | 0 | 0 | 0 | 22 |
alekstheod | 11 | 1 | 0 | 0 |
dnmaster1 | 0 | 0 | 2 | 9 |
codinglover222 | 6 | 2 | 0 | 1 |
mraunak | 0 | 0 | 0 | 9 |
muayyad-alsadi | 0 | 0 | 0 | 9 |
NexusHex | 0 | 0 | 0 | 8 |