Når du bruger `forch.compile ', kan der opstå flere almindelige faldgruber:
1. Performancevariabilitet: `Torch.Compile` forbedrer ikke altid ydelsen og kan undertiden resultere i langsommere udførelse eller øget hukommelsesforbrug. Det er vigtigt at sammenligne ydelsen af den kompilerede model mod den originale model [2] [4].
2. grafpauser: Hvis `Torch.Compile` møder ikke -understøttet kode eller komplekse operationer, kan det introducere" grafpauser ", opdeling af koden i optimerede og uoptimerede dele. Selvom de ikke er dødelige, kan disse pauser begrænse optimeringsfordelene. Omskrivning af problematiske sektioner kan hjælpe [2] [4].
3. kryptiske fejlmeddelelser: Samlingsfejl producerer ofte kryptiske fejlmeddelelser, der er vanskelige at fejlsøge uden hjælp fra Pytorch -teamet. Dette kan gøre fejlfinding udfordrende [2] [4].
4. Lange samlingstider: Selve kompileringsprocessen kan være tidskrævende, undertiden tage flere minutter eller endda længere for større modeller. Dette gør det tilrådeligt at evaluere `Torch.Compile 'mod udviklingen af udviklingen snarere end i de indledende faser [1] [4].
5. Dynamiske former og genkompilering: `Torch.Compile` antager oprindeligt statiske tensorformer. Hvis former ændres, kan der forekomme genkompilering, medmindre dynamiske former er aktiveret. Dette kan føre til langsommere indledende kørsler på grund af genkompilering [1].
6. Multithreading -spørgsmål: I øjeblikket er multithreading med `Torch.Compile` Buggy, som kan begrænse brugen i samtidige miljøer [3].
7. Ikke -understøttede funktioner: Nogle numpy -funktioner eller komplekse operationer understøttes muligvis ikke af `Torch.Compile`, hvilket fører til samlingsproblemer eller grafpauser [5].
For at afbøde disse problemer anbefales det at anvende `Torch.Compile 'til funktioner på højt niveau, bruge dynamiske former, når det er nødvendigt, og teste grundigt den kompilerede model's ydeevne sammenlignet med originalen [1] [2].
Citater:[1] https://pytorch.org/docs/stable/torch.compiler_troubleshooting.html
[2] https://lightning.ai/docs/fabric/2.2.3/advanced/compile.html
[3] http://blog.ezyang.com/2024/11/ways-to-brug-tch-compile/
[4] https://lightning.ai/docs/pytorch/stable/advanced/compile.html
[5] https://pytorch.org/docs/stable/torch.compiler_faq.html
)
)
[8] https://github.com/patrick-kidger/jaxtyping/issues/196