TMS LLC
Tenstorrent
Ingénieur Logiciel, Scale Out
À propos du poste
Tenstorrent est un leader de l'industrie dans les technologies d'IA de pointe, révolutionnant les attentes en matière de performance, de facilité d'utilisation et d'efficacité des coûts. Alors que l'IA redéfinit le paradigme informatique, les solutions doivent évoluer pour unifier les innovations dans les modèles logiciels, les compilateurs, les plateformes, le réseau et les semi-conducteurs. Notre équipe diversifiée de technologues a développé un CPU RISC-V haute performance à partir de zéro, et partage une passion pour l'IA et un profond désir de construire la meilleure plateforme d'IA possible. Nous valorisons la collaboration, la curiosité et l'engagement à résoudre des problèmes complexes. Nous élargissons notre équipe et recherchons des contributeurs de tous niveaux d'expérience.
Tenstorrent recherche un ingénieur logiciel expérimenté passionné par la création de systèmes logiciels bas de niveau et haute performance. Dans ce rôle, vous contribuerez au développement et à l'optimisation de l'infrastructure qui alimente nos processeurs de pointe, avec un accent principal sur le développement C/C++ et la programmation bas niveau. Vous travaillerez en étroite collaboration avec le développement de grands modèles d'inférence et d'entraînement pour améliorer davantage les performances logicielles et matérielles de Scale Out.
Ce poste est hybride, basé à Toronto, ON.
Ce que vous apprendrez
- Le modèle d'exécution et l'architecture système du matériel d'IA Tenstorrent.
- Comment les systèmes d'accélérateurs distribués coordonnent la communication et la synchronisation à grande échelle.
- Techniques avancées d'optimisation des performances au niveau système sur plusieurs couches de la pile.
- Comment l'infrastructure bas niveau, les runtimes et le matériel co-évoluent dans les plateformes d'IA haute performance.
- Les défis liés à la construction d'une infrastructure fiable et de qualité production pour les charges de travail d'IA à grande échelle.
Cette offre d'emploi est conditionnée à l'éligibilité du candidat à accéder à la technologie américaine soumise aux réglementations sur les exportations. En raison des lois américaines sur l'exportation, y compris celles codifiées dans l'Export Administration Regulations (EAR) des États-Unis, la Société est tenue d'assurer la conformité avec ces lois lors du transfert de technologie vers des ressortissants de certains pays (tels que les groupes de pays EAR D:1, E1 et E2). Ces exigences s'appliquent aux personnes situées aux États-Unis et dans tous les pays hors des États-Unis. Comme le poste offert impliquera un accès direct et/ou indirect à des informations, systèmes ou technologies soumis à ces lois, l'offre peut être conditionnée à votre statut de citoyenneté/résidence permanente ou à votre capacité à obtenir une licence préalable du Département du Commerce des États-Unis ou de l'agence fédérale applicable. Si l'emploi n'est pas possible en raison des lois américaines sur l'exportation, toute offre d'emploi sera annulée.
Prérequis
Qui vous êtes
- Ingénieur système C ou C++ expérimenté avec une compréhension approfondie de la mémoire, du threading, des E/S et des modèles d'exécution bas niveau.
- Expérience dans la création de logiciels bas niveau, de pilotes, de systèmes embarqués ou d'infrastructures critiques en termes de performance.
- À l'aise pour travailler au plus près du matériel et curieux de savoir comment les systèmes se comportent en interne.
- Maîtrise de la programmation système Linux et des outils de débogage tels que gdb, strace et perf.
- Résolveur de problèmes structuré qui excelle dans des environnements rapides et hautement techniques.
Ce que nous attendons
- Concevoir, développer et maintenir des logiciels d'infrastructure de base qui s'interfacent directement avec le matériel Tenstorrent.
- Construire des bibliothèques bas niveau et des APIs pour la communication et la synchronisation entre les nœuds de calcul.
- Optimiser les logiciels système pour la performance, la scalabilité et la fiabilité dans des environnements distribués.
- Assister la mise en service du matériel, les tests système et le déploiement en étroite collaboration avec les équipes matérielles et logicielles.
- Intégrer les composants d'infrastructure avec les modèles de programmation, les outils et les systèmes d'exécution internes.
Tenstorrent offre un ensemble de rémunération et d'avantages très compétitifs, et nous sommes un employeur garantissant l'égalité des chances.
