J'ai une interview à venir dans une semaine d'une semaine pour une position de niveau d'entrée qui implique une programmation dans CUDA (espérons-le en C). p>
Je me demandais si quelqu'un peut suggérer des questions d'entretien que je peux m'attendre lors de l'entretien. P>
J'ai parcouru le Guide de programmation officiel, mais je ne suis pas tout ce qui est pratique actuellement. P>
Merci. P>
3 Réponses :
Quelques questions je pense que vous devriez préparer: p>
@fabriziom merci beaucoup! C'était vraiment très utile. Je peux répondre à la plupart d'entre eux :) Je me sens un peu confiant maintenant.
C'est censé être une interview et non une émission de quiz. Vous voulez demander quelque chose qui les oblige à montrer comment les roues de leur tête tournent, ne vérifient pas qu'ils ont lu le Guide de l'utilisateur.
Si c'est un rôle scientifique, attendez-vous aux questions sur le point flottant et la précision numérique, vous devriez notamment examiner l'échantillon de réduction dans le SDK NVIDIA, car cela illustre également une charge complète des points de Fabrizio. P>
"Vous avez n vecteurs de longueur m (n >> m). Dis-moi comment vous allez concevoir un noyau pour évaluer la matrice de distance. Portez une attention particulière à la manière dont le problème est sous-divisé et à la manière La coopération du fil peut être utilisée pour améliorer l'occupation. P>
Comment votre réponse à cette question changerait-elle si M >> N? " P>
L'idée ici est de ne pas vous procurer un code d'écriture, mais pour vous faire penser à voix haute. Cela montre que vous savez vraiment utiliser la technologie GPGPU et ne pas simplement régurgiter le Guide de l'utilisateur. P>
Avez-vous essayé d'écrire quelque chose de non-trivial? Simulation N-Body ou quelque chose comme ça? Cuda exige que vous planifiez attentivement l'accès à la mémoire coopérative afin d'obtenir une sorte de performance. Sans aucune expérience pratique, vous serez découvert.
Malheureusement non. La simulation n-corps et l'ILK est trop complexe pour moi! Mais j'ai bavardé avec Cuda pendant environ 4-5 mois maintenant. J'ai écrit un certain nombre de programmes pour comprendre les routines et l'architecture bien.
Je ne veux pas dire spécifiquement N-corps, mais tout programme exploite la coopération de thread serait un bonus. Sinon, vous n'obtiendrez aucune augmentation significative des performances du GPU. N-Body n'est qu'un exemple (simple), mais d'autres aussi bien. Multiplication Matrix, évaluant les matrices de distance, ce genre de chose. Si vous essayez d'apprendre Cuda en mémorisant le guide de l'utilisateur, vous vous plongerez et brûlerez.