Comment calculer optimal de la taille des lots

Parfois, je rencontre un problème:

OOM lors de l'attribution du tenseur de la forme de la

e.q.

OOM lors de l'attribution du tenseur de la forme (1024, 100, 160)

Où 1024 est ma taille de lot et je ne sais pas ce qui est le reste. Si je diminue la taille de lot ou le nombre de neurones dans le modèle, il fonctionne très bien.

Est-il un générique façon de calculer optimal de la taille des lots en fonction du modèle et de la mémoire graphique, de sorte que le programme ne plante pas?

MODIFIER

Depuis ma question peut sembler incertaine, permettez-moi de mettre à sa manière: je veux la plus grande taille de lot possible en termes de mon modèle, qui va rentrer dans mon GPU, de la mémoire et de ne pas planter le programme.

EDIT 2

À celui qui a voté pour la fermeture de la question d'être trop large: Comment sur terre est la question trop large? Il y a un algorithme qui sélectionne une portion de données pour mettre en mémoire GPU. Il est clairement imparfait puisque les données excède parfois les la mémoire graphique. Demander comment fonctionne l'algorithme, afin d'éviter des plantages aléatoires, semble tout à fait raisonnable pour moi.

InformationsquelleAutor Andrzej Gis | 2017-10-09