IGNF / myria3d

Myria3D: Aerial Lidar HD Semantic Segmentation with Deep Learning
https://ignf.github.io/myria3d/
BSD 3-Clause "New" or "Revised" License
151 stars 20 forks source link

Configuration : cherche à affecter les gpu quand 'trainer.gpus' est spécifié même quand 'accelerator=cpu' #84

Closed MichelDaab closed 5 months ago

MichelDaab commented 10 months ago

Quand on demande un apprentissage sur CPU (trainer.accelerator=cpu), mais qu'il y a quand même des gpu demandés dans la config (trainer.gpus: 2) et que les gpus ne sont pas disponible, il refuse de se lancer en expliquant que les gpus ne sont pas là

CharlesGaydon commented 7 months ago

C'est la conséquence de différentes redondances dans l'API du Trainer de Pytorch-Lightning. C'est un problème qui avait été idenfié, et depuis mars 2022 le flag gpus est d'ailleurs déprécié (cf. cette PR), et la manière par défaut d'utiliser des devices est de spécifier trainer.devices=k trainer.accelerator=cpu/gpu.

C'est un soucis sans grande conséquence autre que de la confusion pour nous actuellement...

Si on met à jour Pytorch et Pytorch-Lightning ça peut être l'occasion de s'adapter à cette nouvelle API. D'ailleurs, dans la version actuelle de PLT, le flag gpus ne fait plus partie de l'API du Trainer et ce n'est pas clair si les mainteneur ont laissé la possibilité d'utiliser le flag gpus, donc il est possible qu'une mise à jour oblige à passer à la nouvelle API.

CharlesGaydon commented 5 months ago

Corrigé par https://github.com/IGNF/myria3d/pull/105