Professeur responsable

Daniel Lemire

* COURS EN PRÉPARATION *

Ce cours n'est pas offert actuellement.

Préalable

INF 1220

Objectifs

Contenu

Notions élémentaires de génie logiciel: tests et contrôle des versions; représentation des données: entiers signés et non signés, le complément à deux, les nombres à virgule flottante (norme IEEE 754), encodage des caractères (ASCII, Unicode, UTF-8), encodage base64. Manipulation des bits au sein d'un mot; génération des nombres aléatoires, fonctions de hachage, mise en œuvre des tables de hachage, des vecteurs de bits, des tableaux dynamiques, des tas binaires et des structures en arbre. Filtres de Bloom; recherche binaire. Tri et permutation aléatoire. Compression; hiérarchie de la mémoire (L1, L2, RAM, etc.) et échecs de la mémoire tampon; concurrence et parallélisme. Programmation parallèle: multiprocesseur et vectorisée; loi d'Amdahl. Fils et verrous. Sémaphores, barrières, moniteurs. Coût d'appel d'une fonction; processeurs superscalaires, pipelines, prédiction des embranchements.

Renseignements technologiques

Consultez l'information sur le matériel informatique recommandé.

Liste des programmes dont ce cours fait partie