Weekly GitHub Report for Tensorflow - 2025-01-13 12:00:42
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 implementation of Hermetic CUDA for more reproducible builds. Notably, TensorFlow now supports NumPy 2.0 by default, with continued support for NumPy 1.26 until 2025, and introduces 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 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 problem is different due to the ARM architecture. The conversation reveals that TensorFlow does not provide support for Windows + ARM configurations, and suggestions are made to try using WSL or Colab as alternatives. The discussion also covers the concept of "missing wheels" and the challenges of supporting various CPU architectures.
- Number of comments this week: 7
-
How to run TFLite benchmark with QNN delegate in Android: This issue is a feature request for guidance on running a TensorFlow Lite benchmark with a QNN delegate on an Android device, specifically a One Plus 7 Pro running Android 11. The user has successfully run benchmarks using TensorFlow 2.15.0 but encounters failures when attempting to use the QNN delegate, despite following the setup instructions and testing on devices with Snapdragon 855 and Gen 3 chips.
- The comments discuss the need for a detailed reproducible script to understand the build process, including questions about the use of Docker, NDK/SDK versions, and build commands. The user provides detailed steps and configurations used for building the benchmark model, including the use of macOS and specific Bazel configurations. Another user attempts a similar setup on Linux with tf-nightly but encounters the same issues, prompting further investigation by 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 application 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 the app lagging and crashing. The user cannot share their private repository but provides abuild.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
-
TFLITE NMS kernel Inconsistent Outputs and Out of Memory issues: This issue highlights a bug in the TFLITE NMS kernel where its output is inconsistent with the TensorFlow NMS output, specifically appending zeros to the "selected_indices" output, which leads to out-of-memory 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 results in slow computation and memory issues.
- The comments discuss labeling the issue for better categorization, 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 collaboration.
- Number of comments this week: 3
-
Broken compatibility with tensorflow-metal in 2.18: This issue reports a bug in TensorFlow version 2.18, where compatibility with the tensorflow-metal plugin on MacOS 15.2 using an Apple M2 Max GPU is broken, resulting in a "Symbol not found" error when attempting to list physical GPU devices. The problem does not occur with TensorFlow version 2.17, indicating a regression or compatibility issue introduced in the newer version.
- The comments discuss similar experiences with the issue, with one user confirming the problem and another suggesting a workaround by using TensorFlow 2.16.2, which works fine. It is noted that the tensorflow-metal plugin is not currently supported, and a suggestion is made to report the issue on Apple's developer forums for a quicker resolution. A bug report has been created on the Apple forums as a follow-up action.
- 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 Version Compatibility Issues: Users have reported various compatibility issues when upgrading to newer TensorFlow versions. One user encountered a "Symbol not found" error on MacOS 15.2 with an Apple M2 Max GPU when upgrading to TensorFlow 2.18, which did not occur with version 2.17. Another user faced a bug in TensorFlow 2.17.0 where the
tf.math.floormod
operation failed on float-type tensors using a GPU, while it worked correctly with integer types on a GPU and float types on a CPU.
- TensorFlow Model Conversion Errors: Several users have experienced errors when converting models to TensorFlow Lite. One user encountered a RuntimeError due to an "IsPowerOfTwo" error in the rfft2d operation, while another faced an unresolved custom operation, XlaDynamicSlice, when converting a T5 model from Huggingface to TensorFlow Lite for Android.
- TensorFlow Build and Compilation Issues: Users have reported build and compilation issues across different platforms. A user faced a compilation error on Windows due to incorrect path handling, while another encountered undefined symbols for the arm64 architecture when building TensorFlow Lite for iOS.
- TensorFlow GPU and Memory Issues: There are reports of GPU and memory-related issues in TensorFlow. One user reported a memory allocation problem on Ubuntu 24.04.1 LTS using WSL2, where a virtual GPU exceeded its memory limit during training. Another user experienced a bug in GPU profiling where memory events were not captured when profiling a remote worker.
- TensorFlow Configuration and Dependency Issues: Users have encountered issues related to TensorFlow configuration and dependencies. One user sought guidance on configuring TensorFlow 2.18 to use local CUDA libraries instead of hermetic CUDA. Another faced a failure during the Gradle sync process in a codelab due to a dependency resolution listener error.
- TensorFlow Model Training and Saving Bugs: Bugs have been reported in TensorFlow's model training and saving functionalities. A user found that saving a Keras model with
include_optimizer=False
did not exclude the optimizer as intended. Another user reported incorrect data ordering when using dictionaries in thefit
method, causing model malfunction.
- TensorFlow XLA Compiler and TPU Connection Issues: Users have faced issues with the XLA compiler and TPU connections. One user reported a bug where the XLA compiler failed to compile a
tf.keras.layers.Conv2D
layer withpadding='valid'
. Another user experienced difficulties connecting to a TPU v4-32 from a Cloud VM due to metadata retrieval problems.
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: 16
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 2.15.0. Another issue highlights the inability to use CUDA 12.1 with TensorFlow 2.17.0 on Windows 10, despite having all necessary packages installed.
- TensorFlow Lite Compilation and Execution Problems: Several issues have been reported regarding TensorFlow Lite, including a linker error during cross-compilation on WSL Ubuntu 20.04 due to incorrect library references. Additionally, there is a lack of GPU acceleration support for the Adreno 750, leading to reliance on CPU configurations.
- TensorFlow Build and Installation Challenges: Users have faced challenges building and installing TensorFlow on various platforms. One user encountered a Clang extension error while building TensorFlow Lite for iOS, while another faced compilation errors on Ubuntu 18.04 due to incomplete element types in the XNNPACK library.
- ARM Architecture Support Issues: There are significant issues related to ARM architecture support, particularly for the Raspberry Pi Zero. Users have reported difficulties installing TensorFlow on ARMv6 architecture and compatibility problems with the cross-compilation toolchain targeting ARMv7.
- Model Training and Conversion Bugs: Bugs have been identified in model training and conversion processes. A bug in the
BackupAndRestore
method requires explicit model building before training, and issues with TensorFlow model conversion to TensorFlow Lite result in incorrect outputs and reduced accuracy.
- Algorithm Convergence and Execution Errors: Users have reported issues with algorithm convergence and execution errors. An Actor-Critic algorithm in TensorFlow 1.x fails to converge, prompting a recommendation to migrate to TensorFlow 2.x. Additionally, the
tf.math.floormod
operation in TensorFlow 2.17.0 encounters errors with float-type tensors.
- Documentation and Release Schedule Requests: There is a request for documentation regarding the release schedule of TensorFlow 2.18, as users are concerned about potential breaking changes with the transition to Numpy 2.0. This request highlights the need for guidance on project updates.
- Custom Model Training Anomalies: A user experienced unexpected behavior while training a custom Siamese Network, where the model outputs the same class for every instance when using
tf.data.Dataset
. This issue raises questions about potential implementation errors or internal TensorFlow/Keras problems.
- Build Failures on Windows with GPU Support: A user encountered build failures when compiling TensorFlow 2.10 with GPU support on Windows 11 using MSVC 2019, due to missing header files from the cudnn_frontend. Attempts to modify Bazel files did not resolve the issue.
- PyCharm and TensorFlow Function Recognition Issues: An error was reported when using TensorFlow 2.18.0 in PyCharm on Ubuntu 22.04, where certain TensorFlow functions were not recognized. Suggestions included importing Keras directly rather than through TensorFlow.
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. All other pull requests are grouped based on similar characteristics for easier analysis.
Pull Requests Opened This Week: 4
Key Open Pull Requests
1. Replacement PR for #76210 Add support for quint8 type for uniform_quantize and uniform_ dequantize ops: This pull request is a replacement for a previous one (#76210) and aims to add support for the quint8 data type in the uniform_quantize and uniform_dequantize operations within the TensorFlow project, as evidenced by multiple commits addressing various fixes and improvements, including merging updates from the master branch.
- URL: pull/84497
- Merged: No
- Associated Commits: 7472fadf0a725210c632aeb87b2f54bed6a230b9, 0a389391c6a6068cd81b882f71c6b79388910c8e, d5b2503a0655524c3b17eb3ab75f8206e9a4f8ed, a42b9941c1932a1f9ac81c79b94693033b1875c2, 3034da0218dfb8c8628eee927d46251f533a1ee2, 4c3c7b8c107a8ee1f6545fb9c33c72bca98ff1e1
2. Updated rules_python patch to get 3.13.1 python: This pull request updates the rules_python patch in the TensorFlow project to support Python version 3.13.1, as indicated by the commit message and the involvement of a collaborator tagged in the discussion.
- URL: pull/84481
- Merged: No
- Associated Commits: d16338518baeefab0048057b33c56193582db5b7
3. Add div/truediv support for bool-val tensor.: This pull request aims to add support for division and true division operations on boolean 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
Other Open Pull Requests
- Build Configuration Update: This pull request focuses on updating the build configuration in the TensorFlow project. The update involves adjusting the configuration to an existing value defined in the .bazelrc file to prevent build failures due to the absence of a configuration called "opt".
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. All other pull requests are grouped based on similar characteristics for easier analysis.
Pull Requests Closed This Week: 17
Key Closed Pull Requests
1. Add numpy compliant mul operator override for bool-val tensor.: This pull request addresses the inconsistency between TensorFlow tensors and NumPy arrays by adding support for the multiplication operator (*) for boolean tensors, ensuring compatibility with NumPy's behavior, and includes several commits for implementation, testing, and minor adjustments.
- URL: pull/83753
- Merged: Yes
- Associated Commits: f5dcf807ea69e20078c6cd3834ef458120b30410, d4aef7088ad6cc987e611d45a03d74e7c44ad10f, c8e5f66965714c8eb3211ae8099c467872b5901a, 71ebdf647187eb51a888f8b9a28b80b86f8a4eaa, 6da192690475192bdb014e8112266562dc803fd9, 7d728ca97c3e74df17d35b737ae9b131fab71a82
2. Fix typos in multiple documentation strings: This pull request addresses and corrects several typographical errors in the documentation strings of the TensorFlow project, improves clarity by using better wording, resolves a lint issue, and includes a merge from the master branch, as evidenced by the commits linked in the request.
- URL: pull/84463
- Merged: Yes
- Associated Commits: 1b3ee9d4134fdcb69ce880d2d39aff1b9b095b23, 810f33c8c9c0741a5f66f74384ca01103dc568ab, 3d9a31f74a3a8c230ef134952d6328166f33e767, cbc2ac272b8fe48236ca7fefdc2cb8f2cab1cabb
3. 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
Other Closed Pull Requests
- ROCM Platform Refactoring: This pull request refactors the gpu_blas_lt interface in the ROCM platform by replacing the DoMatmul function with the more robust ExecuteOnStream call. This change simplifies the interface and improves support for hipblas-lt.
- TensorFlow Lite C API Symbol Export: Two pull requests address issues related to exporting TensorFlow Lite C API symbols on Windows. The first resolves a linker error with static libraries, while the second corrects symbol exports for shared libraries by modifying CMakeLists.txt files.
- CMake Configuration and Compilation Fixes: These pull requests resolve cross-compilation errors and enhance regex filtering in the CMake configuration of the TensorFlow project. They ensure proper handling of 'label_image' component and prevent linker errors due to 'neon' and 'sse' terms in paths.
- Documentation Updates: Several pull requests focus on documentation improvements, including fixing broken links in
best_practices.md
and adding comprehensive documentation for the TensorFlow Eager Monitoring Counter API bindings. These updates enhance user understanding and support performance analysis.
- Miscellaneous Updates: These pull requests include updates to the
.bazelignore
file and the addition of a new README file, although they were not merged. Another pull request updates the README.md to include details about a custom Adam optimizer implementation.
- Validation Check for ResourceSparseApplyKerasMomentum: This pull request addresses a check failure in the
ResourceSparseApplyKerasMomentum
operation by proposing a validation check for dtype float32. This change potentially resolves issue #63720.
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 |
---|---|---|---|---|
mihaimaruseac | 5 | 0 | 0 | 66 |
Venkat6871 | 2 | 2 | 0 | 41 |
gaikwadrahul8 | 3 | 3 | 0 | 27 |
tilakrayal | 0 | 0 | 0 | 20 |
alekstheod | 11 | 1 | 0 | 0 |
codinglover222 | 7 | 3 | 0 | 1 |
dnmaster1 | 0 | 0 | 2 | 9 |
muayyad-alsadi | 0 | 0 | 0 | 9 |
mraunak | 0 | 0 | 0 | 8 |
NexusHex | 0 | 0 | 0 | 8 |
Access last week's newsletter: https://buttondown.com/weekly-project-news/archive/weekly-github-report-for-tensorflow-december-29/