Test N 3 ICC MT & EL EPFL vendredi 19 décembre 2014 QUIZZ

Documents pareils
Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Initiation à LabView : Les exemples d applications :

Structure fonctionnelle d un SGBD

Architecture des ordinateurs

PG208, Projet n 3 : Serveur HTTP évolué

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Algorithmique et Programmation, IMA

VIII- Circuits séquentiels. Mémoires

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Chapitre 4 : Les mémoires

Conception de circuits numériques et architecture des ordinateurs

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Tests de performance du matériel

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Cours Informatique 1. Monsieur SADOUNI Salheddine

GESTION DE LA MEMOIRE

Technologie SDS (Software-Defined Storage) de DataCore

Architecture des ordinateurs Introduction à l informatique

Travaux pratiques Détermination de la capacité de stockage des données

SGM. Master S.T.S. mention informatique, première année. Isabelle Puaut. Septembre Université de Rennes I - IRISA

Limitations of the Playstation 3 for High Performance Cluster Computing

Réseaux grande distance

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Représentation des Nombres

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

Prêt(e) pour le CE1. Tu es maintenant au CE1. Avant de commencer les leçons, nous allons réviser avec toi!

Partie 7 : Gestion de la mémoire

Parallélisme et Répartition

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

Systemes d'exploitation des ordinateurs

Algorithme. Table des matières

NIMEGUE V3. Fiche technique 3.07 : Sauvegarde / Restauration manuelle

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Cloud computing et sécurité

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

IFT1215 Introduction aux systèmes informatiques

Création de maquette web

Corrigé des TD 1 à 5

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

Architecture des ordinateurs

Programmation impérative

Rappels d architecture

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

Programmation parallèle et distribuée

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

AUJOUR'HUI, NOUS ALLONS DÉCOUVRIR

Manuel d utilisation de la plate-forme de gestion de parc UCOPIA. La mobilité à la hauteur des exigences professionnelles

Données Réparties. Thibault BERNARD.

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

SYS MEM. Gestion de la mémoire. Table des matières. IUT - Département Informatique. ASR2-Système. 1.1 Motivation

SYSTÈME DE GESTION DE FICHIERS

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

ASR1 TD7 : Un microprocesseur RISC 16 bits

Vous êtes bien à la bonne présentation, c est juste que je trouvais que le titre de cette présentation étais un peu long,

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

Projet Electronique Serrure Codée GROUPE PROJET : PUAGNOL Jean Paul AITOUAKLI Yazid HU Shiqi CHANVOEDOU Nathanaël

Un ordinateur, c est quoi?

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

Plan. Programmation Internet Cours 3. Organismes de standardisation

Tsoft et Groupe Eyrolles, 2005, ISBN :

Cours d Informatique

MANUEL UTILISATEUR SOPISAFE V 3.5

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP

Optimisations des SGBDR. Étude de cas : MySQL

I00 Éléments d architecture

CONFIGURATION DE L AUTOMATE SIEMENS

Algèbre binaire et Circuits logiques ( )

Licence Sciences et Technologies Examen janvier 2010

Présentation du module Base de données spatio-temporelles

Initiation. àl algorithmique et à la programmation. en C

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

Fiche technique CPU 314SC/DPM (314-6CG13)

1. Systèmes d entrée/sortie 2. Systèmes de fichiers 3. Structure de mémoire de masse (disques)

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

Rappels sur les fichiers

1 Recherche en table par balayage

Encryptions, compression et partitionnement des données

COMPOSANTS DE L ARCHITECTURE D UN SGBD. Chapitre 1

Projet Matlab : un logiciel de cryptage

Logique séquentielle

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Introduction à l algorithmique et à la programmation (Info 2)

Cours admin 200x serveur : DNS et Netbios

Richard Abibon. «Le sujet reçoit de l Autre son propre message sous une forme inversée»

26 Centre de Sécurité et de

Transcription:

QUIZZ Remarque : l ordre des réponses était différent selon les variantes. onc ne faites pas attention à la lettre correspondant à la réponse correcte mais seulement à la réponse correcte elle même qui est surlignée en jaune. Question 1 : quel circuit a pour sortie X selon la table de vérité suivante > X 1 0 0 1 1 0 Réponse : Question 2 : Quelle est la table de vérité de la sortie X de ce circuit > X 1 0 1 1 1 0 X 0 1 0 1 0 1 1 1 1 X 0 0 0 1 0 1 1 1 1 X 1 0 0 1 1 1 Réponse : 1

Question 3 : on désire réduire le temps pour effectuer une addition sur 64 bits par un facteur de (presque) 4. L idée est de gagner un facteur 2 supplémentaire par rapport à la solution vue en cours en remplaçant les additionneurs sur 32 bits par des additionneurs sur 16 bits. ombien faut il d additionneurs 16 bits en tout? deux réponses sont acceptées 3 15 7 16 Question 4 : un laptop est équipé d un processeur avec un niveau de mémoire cache (latence 10ns), une mémoire centrale (latence 150 ns) et un disque dur (latence 1ms). On observe la répartition suivante des accès aux données lorsqu on travaille sur une tâche T : 60% des accès aux données tirent parti de la mémoire cache ; pour les autres accès, 90% sont obtenus de la mémoire centrale tandis que le reste doit être demandé au disque dur. Quelle est la latence moyenne (en ns) pour cette tâche T? 100 40 060 181 100 141 Le programme assembleur suivant est exécuté avec une valeur entière strictement positive disponible dans le registre r0. Le résultat est chargé dans r4. Voici quelques précisions sur des instructions pouvant présenter une ambiguïté : cont_egal a, b, c fait continuer l exécution à la ligne c si les registres a et b sont égaux. divise ra, rb, rc effectue la division entière de rb par rc et range le résultat dans ra 0 : charge r1, 1 1 : charge r2, 0 2 : charge r3, 2 3 : cont_egal r0, r1, 7 4 : divise r0, r0, r3 5 : somme r2, r2, r1 6 : continue 3 7 : charge r4, r2 8 : stop Question 5 : Lorsque r0 vaut 9 comme valeur initiale, le résultat de l exécution est : 2 3 4 1 Question 6 : quel est l ordre de complexité de ce programme en fonction de r0? O(1) O(r0) O(r0 2 ) O(log(r0)) 2

Question 7 : e graphe de routeurs Internet montre la distance entre chaque nœud à coté de chaque lien. Par exemple, la distance entre et est de 3. Indiquer quelle est la table de routage du nœud parmi les choix suivants. Pour chaque destination (colonne de gauche) on indique la direction du prochain nœud (colonne du milieu) et la distance du plus court chemin (colonne droite). est. ir. ist. 8 4 3 est. ir. ist. 7 E 3 3 est. ir. ist. E 6 E 3 E 2 est. ir. ist. E 6 E 3 3 Réponse : Question 8 : on considère un réseau contenant plusieurs routeurs (,,,, N). On connaît seulement les tables de routage des nœuds, F et H données ci dessous : F H est. ir. ist. est. ir. ist. est. ir. ist. G 2 K N 3 G 2 2 L E 2 F N 2 N x y J I 2 J N 3 En se basant uniquement sur les informations fournies par ces tables et sur la règle de mémoriser seulement le plus court chemin dans une table, indiquer les valeurs correctes de x et de y : x = et y = 4 x = et y = 5 x = et y = 5 x = et y = 4 3

Question 9 : supposons que l EPFL soit reliée à d autres nœuds du réseau suisse comme ceci : Le réseau comporte 5 nœuds : EPFL, Unie, ETHZ, UniSG, USI. Les tables cidessous indiquent seulement la direction du nœud suivant pour une destination, ou un ensemble de destinations données. ans cette question, on peut remarquer que le chemin entre deux nœuds n est pas déterminé par le plus petit nombre de sauts. En effet, les tables prennent en compte aussi la capacité des liens. Par exemple, la capacité du lien EPFL > USI n est pas suffisante pour supporter la bande passante requise pour les communications entre EPFL et ETHZ, c est pourquoi les communications EPFL >ETHZ passent par Unie comme première étape, puis par USI car les liens Unie >USI et USI >ETHZ ont une plus grande capacité (remarque : un centre de calcul important est installé à USI). Enfin, il faut aussi remarquer que la capacité des liens dépend de la direction de transmission, ce qui explique qu une communication entre deux sites ne va pas forcément utiliser le même chemin dans les deux sens. Voici les tables : EPFL Unie ETHZ USI UniSG est. ir. est. ir. est. ir. est. ir. est. ir. Unie, EPFL EPFL UniSG UniSG EPFL EPFL ETHZ ETHZ ETHZ, Unie UniSG USI USI USI, ETHZ, UNISG USI Unie Unie Unie Unie USI, Unie, EPFL EPFL, USI USI ETHZ, UniSG ETHZ Indiquer la bonne réponse pour une communication établie entre l EPFL et UniSG dans les deux sens : EPFL >Unie >USI >ETHZ >UniSG et UniSG >ETHZ >USI >Unie >EPFL EPFL > USI > UniSG et UniSG >USI >EPFL EPFL > USI > UniSG et UniSG >ETHZ >USI >Unie >EPFL EPFL >Unie >USI >ETHZ >UniSG et UniSG >USI >EPFL Question 10 : Soit un ordinateur avec un processeur d horloge 2 GHz et une mémoire cache de 16 blocs, chaque bloc ayant une taille de 128 octets. La mémoire centrale présente une latence de 100 cycles d horloge du processeur. On désire exécuter un programme pour traiter séquentiellement un ensemble de données de 8 Ki (c'est à dire 2 13 octets) présent en mémoire centrale. Le programme lit un octet à la fois et accumule sa valeur dans un registre du processeur. On considère que cette accumulation (=addition) représente un cycle d horloge du processeur. Quel est le temps nécessaire pour réaliser cette tâche? 8192 ns 3200 ns 4146 ns 7296 ns USI 4

Question 11 : L expression memory wall désigne : Un accroissement croissant du coût des technologies de stockage L impossibilité de donner un accès rapide à une grande masse de donnée au processeur du fait de l espace nécessaire pour mémoriser une grande quantité de données. Une baisse de coût insuffisante des technologies de stockage à long terme L accroissement des performances des mémoires en terme de capacité alors que les processeurs s améliorent en terme de vitesse. Question 12 : Le stockage des données d un fichier sur le disque dur est organisé comme pour un tableau en mémoire centrale (en un seul bloc) constitué d un ensemble de blocs qui sont systématiquement déplacés à chaque modification du fichier pour être dans des secteurs consécutifs du disque. constitué d un ensemble de blocs dont les adresses sont mémorisées dans une table qui est entièrement recopiée en mémoire centrale lorsqu on lit des données du fichier soumis au risque de fragmentation à cause des chocs thermiques. Questions Ouvertes Question 1 : ssembleur Le pseudocode suivant calcule le PG (plus grand commun diviseur) de deux nombres entiers strictement positifs a et b, avec a>b : Tant que a%b (a modulo b) est différent de 0 c b b a % b a c Le résultat final est dans b. On demande d exprimer ce pseudocode en assembleur en supposant que les valeurs initiales de a et de b sont respectivement dans r0 et r1. Le résultat doit être rangé dans r2. Voici quelques précisions sur des instructions pouvant présenter une utilité : cont_egal ra, rb, c fait continuer l exécution à la ligne c si les registres ra et rb sont égaux. modulo ra, rb, rc calcule le reste de la division entière de rb par rc et range le résultat dans ra 0 : charge r4, 0 1 : modulo r3, r0, r1 2 : cont_egal r3, r4, 7 3 : charge r5, r1 4 : charge r1, r3 5 : charge r0, r5 6 : continue 1 7 : charge r2, r1 8 : stop 5

Question 2 : nalyse des accès au cache Nous voulons analyser l efficacité d un programme qui réalise un produit de matrices 2x2. haque valeur d une matrice est un mot (4 octets, 32 bits). // x_mn = élément mn de la matrice x (m = ligne, n = colonne) Pour i de 0 à 1: pour j de 0 à 1: r0 = 0 Pour k de 0 à 1: r1 = a_ik r2 = b_kj r0 = r0 + (r1 * r2) p_ij = r0 Les matrices sont rangées ligne par ligne en mémoire. Par exemple, une matrice serait rangée comme suit :... _00 _01 _10 _11... La mémoire cache a les caractéristiques et le comportement suivants : Le cache contient deux blocs haque bloc du cache contient deux mots de 4 octets chacun (= 8 octets) pproche de type Least Recently Used (LRU) lorsque un bloc doit être remplacé Une action d écriture du cache vers la mémoire centrale n est faite que lorsqu un bloc modifié doit être remplacé par un autre bloc. Lorsque le programme prend fin, les dernières actions d écriture du cache vers la mémoire centrale doivent aussi être faites. lignement des matrices en mémoire : le premier élément d une matrice apparait comme le premier élément du cache. Par exemple, la lecture de _00 provoque la lecture du bloc contenant _00 et _01. ans l analyse de l exécution de ce programme on peut supposer que les variables i, j et k sont mémorisées dans des registres et ne produisent pas de défaut de cache. Lorsque le programme commence son exécution, aucune des 3 matrices, et P ne sont dans le cache. ompléter le tableau ci dessous en indiquant seulement les accès à la mémoire centrale en lecture ou en écriture (pas les accès au cache). Préciser dans la colonne «bloc remplacé» quel est le bloc, s il y en a un, qui laisse sa place au nouveau bloc. il peut y avoir plus de lignes que nécessaire : 6

loc lu Type d opération : loc Explication (non demandée) N lecture/écriture remplacé 1 _00 lecture aucun _01 2 _00 _01 lecture aucun 3 _10 _11 lecture _00 _01 Le bloc _00 _01 a été ré utilisé 4 P_00 P_01 Lecture _00 _01 Le bloc P est lu (et modifié) dans le cache. e bloc sera écrit en mémoire juste avant d être remplacé par un autre à l étape6. 5 _00 Lecture _10 _11 _01 6 P_00 P_01 Ecriture aucun vant la lecture du bloc _00 _01 7 _00 _01 Lecture P_00 P_01 8 _10 _11 lecture _00 _01 Le bloc _00 _01 a été ré utilisé 9 P_00 P_01 lecture _00 _01 Le bloc P est lu (et modifié) dans le cache. e bloc sera écrit en mémoire juste avant d être remplacé par un autre à l étape11. 10 _10 lecture _10 _11 ébut de l Itération i=1 _11 11 P_00 P_01 Ecriture aucun vant la lecture du bloc _00 _01 12 _00 _01 Lecture P_00 P_01 13 _10 _11 Lecture _00 _01 Le bloc _10 _11 a été ré utilisé 14 P_10 P_11 Lecture _10 _11 Le bloc P est lu (et modifié) dans le cache. e bloc sera écrit en mémoire juste avant d être remplacé par un autre à l étape16. 15 _10 Lecture _10 _11 _11 16 P_10 P_11 Ecriture aucun vant la lecture du bloc _00 _01 17 _00 _01 Lecture P_10 P_11 18 _10 _11 Lecture _00 _01 Le bloc _10 _11 a été ré utilisé 19 P_10 P_11 Lecture _10 _11 Le bloc P est lu et modifié. 20 P_10 P_11 Ecriture aucun Écriture finale du bloc P en fin d exécution 7