-
Notifications
You must be signed in to change notification settings - Fork 77
Move torch.cuda.set_device to the fixture #5809
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
Conversation
|
!test |
Description
|
| Relevant files | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Enhancement |
|
PR Reviewer Guide
Here are some key observations to aid the review process:
| 🧪 PR contains tests |
| ⚡ No major issues detected |
Greptile OverviewGreptile SummaryThis PR refactors CUDA device initialization in multidevice tests by moving Changes Made
Total: 15 redundant calls eliminated across all test files. Benefits
Implementation AnalysisThe placement of
The fixture's Confidence Score: 5/5
Important Files ChangedFile Analysis
Sequence DiagramsequenceDiagram
participant PyTest
participant multidevice_test as multidevice_test Fixture
participant MultideviceTest
participant Communicator
participant CUDA
participant TestFunction
PyTest->>multidevice_test: Request fixture
multidevice_test->>MultideviceTest: __init__()
MultideviceTest->>Communicator: instance()
Communicator-->>MultideviceTest: communicator
MultideviceTest->>Communicator: local_rank()
Communicator-->>MultideviceTest: rank_id
MultideviceTest->>CUDA: set_device(rank_id)
Note over CUDA: Device set for current process
MultideviceTest->>CUDA: manual_seed(0)
MultideviceTest-->>multidevice_test: instance
multidevice_test-->>PyTest: fixture ready
PyTest->>TestFunction: Execute test(multidevice_test)
Note over TestFunction: All CUDA operations use<br/>correct device automatically
TestFunction-->>PyTest: Test complete
PyTest->>multidevice_test: Teardown
multidevice_test->>Communicator: barrier()
Note over multidevice_test: Fixture cleaned up
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No files reviewed, no comments
No description provided.