Notre expertise

Notre expertise couvre divers domaines d’activité ainsi que l’ensemble de la chaîne de développement de logiciels et comprend la connaissance des processeurs et des architectures de calcul.

GPGPU

CUDA, OpenCL

Calculs distribués

MPI

Vectorisation

ARM, PowerPC, Intel, AMD

Langages

C, C++, C#, Fortran, Python, MATLAB, ...

Logiciels embarqués

Aérospatial, Ferroviaire, Automobile, ...

Systèmes d'exploitation

Linux, Windows et compatbilité Intel, ARM, PowerPC...

Domaines d'intervention

Nous intervenons dans tous les domaines métier nécessitant du calcul (automobile, spatial, ferroviaire, finance, télécoms, aéronautique, défense).

Traitement d'images

Bénéficier de l'expérience des ingénieurs d'Agenium Scale afin de concevoir des algorithmes de traitement d'images. Nous pouvons également optimiser des algorithmes existants en tirant partie des différents niveaux de parallélisme proposés par les processeurs modernes.

Maintenance prédictive

La maintenance prédictive de système composés de dizaines voire de centaines de sous-systèmes nécessite des algorithmes performants afin d'analyser le plus rapidement possible et en temps réel la masse de données provenant des sous-systèmes. Agenium Scale vous offre son expertise dans ce domaine pour l'appliquer à divers domaines métiers.

Machine learning

La machine learning devient omniprésent et permet d'obtenir de très bons résultats dans divers domaines. La spécialité d'Agenium Scale est d'optimiser l'inférence des réseaux de neurones et plus généralement des algorithmes de machine learning afin que ces derniers puissent s'exécuter plus vite et sur des architectures embarquées.

Systèmes complexes

Beaucoup de métiers nécessitent des matériels spécifiques qui doivent être connectés à un système de calcul. L'intéraction de tous les composants au sein d'un système HPC est délicate. L'expertise d'Agenium Scale vous permettra de mettre au point et d'industrialiser une telle solution.

Temps réel

Un nombre important de système doivent fonctionner en temps réel. Cela peut être pour des raisons de sécurité ou des contraintes techniques. Dans tous les cas il est nécessaire d'optimiser le logiciel fonctionnant sur de tels systèmes. L'expertise HPC des ingénieurs d'Agenium Scale s'applique également à ce domaine afin de rendre des algorithmes temps réel.

Exemples
Cette base de calcul se retrouve dans de nombreuses disciplines techniques telles que le traitement d'images, la maintenance prédictive, le machine learning, le temps réel et les systèmes complexes..

La modernisation et refonte de code

Nous pouvons moderniser votre code C++98 ou Python 2 afin d'utiliser les dernières versions des langages (C++14, C++17, Python 3). Cela permet de revoir ses structures de données et son API afin d'utiliser au mieux les fonctionnalités des librairies standards des langages. Cela permet également d'utiliser les derniers compilateurs afin de bénéficier de leurs passes d'optimisation.

Le diagnostic et l'optimisation de logiciels existants

Nous analysons votre code afin d'établir un diagnostic et de vous proposer des précaunisations. Cela peut être suivi par une optimisation de code à haut niveau (structures de données, sérialisation) mais également à bas niveau (MPI, SIMD, multi-threading).

Le portage de code source d'un langage à un autre

Nous traduisons du code qui peut-être issu d'un prototype afin de l'industrialiser et de le rendre plus performant. Par exemple, nous convertissons du code MATLAB ou Python en C/C++.

La création de logiciels à façon

Nous partons d'une page blanche et créons un logiciel sur mesure répondant à vos besoins. Ce logiciel peut-être autonome, s'inscrire dans un ensemble plus grand, communiquer avec du matériel standard et très spécifique, être contraint dans un environnement embarqué.