
Player FM 앱으로 오프라인으로 전환하세요!
API design via lexical and dynamic scoping
Manage episode 297084189 series 2921809
Lexical and dynamic scoping are useful tools to reason about various API design choices in PyTorch, related to context managers, global flags, dynamic dispatch, and how to deal with BC-breaking changes. I'll walk through three case studies, one from Python itself (changing the meaning of division to true division), and two from PyTorch (device context managers, and torch function for factory functions).
Further reading.
- Me unsuccessfully asking around if there was a way to simulate
__future__
in libraries https://stackoverflow.com/questions/66927362/way-to-opt-into-bc-breaking-changes-on-methods-within-a-single-module - A very old issue asking for a way to change the default GPU device https://github.com/pytorch/pytorch/issues/260 and a global GPU flag https://github.com/pytorch/pytorch/issues/7535
- A more modern issue based off the lexical module idea https://github.com/pytorch/pytorch/issues/27878
- Array module NEP https://numpy.org/neps/nep-0037-array-module.html
83 에피소드
Manage episode 297084189 series 2921809
Lexical and dynamic scoping are useful tools to reason about various API design choices in PyTorch, related to context managers, global flags, dynamic dispatch, and how to deal with BC-breaking changes. I'll walk through three case studies, one from Python itself (changing the meaning of division to true division), and two from PyTorch (device context managers, and torch function for factory functions).
Further reading.
- Me unsuccessfully asking around if there was a way to simulate
__future__
in libraries https://stackoverflow.com/questions/66927362/way-to-opt-into-bc-breaking-changes-on-methods-within-a-single-module - A very old issue asking for a way to change the default GPU device https://github.com/pytorch/pytorch/issues/260 and a global GPU flag https://github.com/pytorch/pytorch/issues/7535
- A more modern issue based off the lexical module idea https://github.com/pytorch/pytorch/issues/27878
- Array module NEP https://numpy.org/neps/nep-0037-array-module.html
83 에피소드
Tüm bölümler
×플레이어 FM에 오신것을 환영합니다!
플레이어 FM은 웹에서 고품질 팟캐스트를 검색하여 지금 바로 즐길 수 있도록 합니다. 최고의 팟캐스트 앱이며 Android, iPhone 및 웹에서도 작동합니다. 장치 간 구독 동기화를 위해 가입하세요.