Comments (7)
I opened intel/torch-xpu-ops#318 with the implementation I propose (which is - always warn on cpu fallback :) ). Let's continue discussion in the PR.
from pytorch.
Also filed intel/torch-xpu-ops#262
from pytorch.
Note: I am fine if "explicit" fallback will be muted by default, but I really need a way to be able to track it.
I still want to comment on that. I personally will be fine with muted logs on fallback by default because I know that currently there are a number of operations not yet implemented in XPU. However, I argue that for other people who just spotted and want to try XPU backend and having limited knowledge on it - for these people such muted behavior might be a problem. They will spot immediately that XPU backend significantly underperforms, sometimes even compared to CPU, and they won't have any obvious reason at hand why. Log messages with warnings that CPU fallback is happening were quote handy here - they were setting correct impression that currently XPU backend might underperform.
My recommendation is to always print a debug message that CPU fallback is happening regardless whether it's explicit (whatever this means) or implicit.
from pytorch.
Got your requirement. In my understanding, the log is not informative for DL workload customers. It should be a debugging requirement.
As to release build, we would keep existing implementation. I think, we could add the feature in debug build.
from pytorch.
@EikanWang Please comment.
from pytorch.
As to release build, we would keep existing implementation. I think, we could add the feature in debug build.
Can you, please, have this feature controlled by environment variable, let's say same as before - PYTORCH_DEBUG_XPU_FALLBACK=1
? In this case you can have it disabled by default for Release build and enabled by default for Debug build. Then, end user can decide whether he want it enabled for Release build or disabled for debug via environment variable.
from pytorch.
We will close the issue as long as the PR is landed.
from pytorch.
Related Issues (20)
- Error in gradient of CTCLoss
- [Bug] Data on CPUs Are Not Synchronized Before Subsequent Operations HOT 7
- TORCH_LIBRARY breaks when passing (unexpanded) macro as namespace argument HOT 1
- custom_op API: better type anntation for Tuple
- Segfault, possibly due to recursion limit
- Fix accuracy regression for cspdarknet53 or flakiness associated with cu121 (and potentially cu124) HOT 1
- dynamo minifier test test_cpu_cuda_module_after_dynamo fail with nn module inlining. HOT 1
- SyntaxError: unterminated string literal (detected at line 1) (<unknown>, line 1) HOT 15
- c++ library written with a lot of errors HOT 1
- [export] Errors out when unflattening TorchTitan HOT 1
- OneCycleLR Example
- Illegal memory access resulted from pointwise autotuning of a cat-like kernel HOT 3
- DISABLED test_workspace_allocation_error (__main__.CudaGraphTreeTests) HOT 1
- Inductor generates unnecessary allocation + copy operations for custom ops with mutable inputs HOT 11
- Strange clamp assert error when building on Fedora 40/gcc 14 in IndexKernel.hip HOT 1
- Add line number to ` _warn_capture_scalar_outputs():`
- module 'torch.mps' has no attribute 'device' HOT 4
- Key error in index_propagation when looking up dynamic shape vr HOT 8
- RuntimeError: `jit.freeze` fails to find externally assigned attributes
- UNSTABLE inductor / cuda12.4-py3.10-gcc9-sm86 / test (dynamic_inductor_timm) HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pytorch.