Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing symbols in official Windows TensorFlow native builds #62579

Open
karllessard opened this issue Dec 6, 2023 · 11 comments
Open

Missing symbols in official Windows TensorFlow native builds #62579

karllessard opened this issue Dec 6, 2023 · 11 comments
Assignees
Labels
comp:core issues related to core part of tensorflow stat:awaiting tensorflower Status - Awaiting response from tensorflower subtype:windows Windows Build/Installation Issues TF2.14 For issues related to Tensorflow 2.14.x type:build/install Build and install issues

Comments

@karllessard
Copy link
Contributor

Hi, we (SIG-JVM) are trying to leverage the Windows C Library builds available under https://storage.googleapis.com/tensorflow/libtensorflow/ which, I think, are built by Google.

Starting from TF 2.14.x, these builds are broken because they do not export the TSL symbols required by the TensorFlow C API.

Here is the list of missing symbols that we (TF Java) do depend on:

jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_DeleteStatus
jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_SetStatus
jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_SetStatusFromIOError
jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_Status
jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_Message
jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_ForEachPayload
jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_NewStatus
jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_GetCode
jnitensorflow.obj : error LNK2001: unresolved external symbol TSL_SetPayload

Can someone look at this please? (modifié)

@angerson
Copy link
Contributor

angerson commented Dec 8, 2023

It seems like Intel has fixed something related that will land in 2.16: #61830

Does that help?

@Venkat6871 Venkat6871 added comp:core issues related to core part of tensorflow type:others issues not falling in bug, perfromance, support, build and install or feature TF2.14 For issues related to Tensorflow 2.14.x subtype:windows Windows Build/Installation Issues type:build/install Build and install issues and removed type:others issues not falling in bug, perfromance, support, build and install or feature labels Dec 8, 2023
@karllessard
Copy link
Contributor Author

Thanks @angerson , the ticket seems to talk about the missing include folders (which we've also noticed but found a workaround for), though it does not mention anything about the non-exported symbols in the binaries. Is there a nightly build of 2.16 of the C API for Windows I can quickly test on?

@sachinprasadhs sachinprasadhs added the stat:awaiting tensorflower Status - Awaiting response from tensorflower label Dec 8, 2023
@karllessard
Copy link
Contributor Author

Is there any Windows build available in the libtensorflow-nightly bucket?

@nitins17
Copy link
Member

nitins17 commented Jan 3, 2024

Is there any Windows build available in the libtensorflow-nightly bucket?

The latest nightly libtensorflow archive for Windows can be found here.

@karllessard
Copy link
Contributor Author

Thanks @nitins17 , we just checked and while the nightly builds do have some of the TSL headers, the TSL_ symbols are still missing from the binaries. cc\ @angerson

@karllessard
Copy link
Contributor Author

Any updates about this/any PR coming soon? Thanks!

@mraunak
Copy link
Contributor

mraunak commented Jan 30, 2024

Hi @karllessard, PR is in progress, will have it merged to master within a couple of days.

@karllessard
Copy link
Contributor Author

Adding a reference to this comment here as well, problem is still not fixed after merging #62874: #62874 (comment)

@nitins17
Copy link
Member

nitins17 commented Feb 9, 2024

Can you provide a short reproducible code snippet for this?

@karllessard
Copy link
Contributor Author

karllessard commented Feb 12, 2024

I can work on a something yes, though I don't have myself a Windows machine and it may take me some time. Meanwhile, you can look at our CI/CD where our own build (TF Java) is failing: https://github.com/tensorflow/java/actions/runs/7777626622/job/21206146416#step:6:1655 (compiler command is here).

All other platforms (linux, macos) succeed to link successfully to the C lib, including to TSL symbols.

@karllessard
Copy link
Contributor Author

Just to highlight here that it would be great to have this fix ready for the 2.16 cut, so that TF Java can continue to support Windows properly in its forthcoming next release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp:core issues related to core part of tensorflow stat:awaiting tensorflower Status - Awaiting response from tensorflower subtype:windows Windows Build/Installation Issues TF2.14 For issues related to Tensorflow 2.14.x type:build/install Build and install issues
Projects
None yet
Development

No branches or pull requests

6 participants