Zeitaufwand für verschiedene Berechnungen

kavuch

Cadet 4th Year
Registriert
Okt. 2014
Beiträge
74
Ich lerne gerade für eine Informatik-Klausur, bei einer Aufgabe komme ich leider nicht weiter.
Folgende Folie hat uns der Prof. zur Verfügung gestellt:
zahlen.png
Dies sind ungefähre Zeitangaben, welche unterschiedliche Operationen benötigen.

Aufgabe 1:
Generate the result for an image search containing 30 thumbnails (à 256K) stored
a) on a single disk.
b) on 30 disks.


Aufgabe 2:
a)Read a relation of size 100GB from a single disk.
b)Read the same relation if it is evenly distributed over 5 different machines.


Ergebnisse:
1. a) 30 seeks * 10ms/seek + 30 * 256 K/50 MB/s = 450ms
1. b) 1 seek * 10ms/seek + 256 K read/50 MB/s = 15ms
2. a) 10 ms + 102,400 MB / 50 MB/s = 2,048.01 s
2. b) 10 ms + 20,480 MB / 50 MB/s = 409.61 s

Es gibt noch weitere solcher Aufgaben (bei Interesse kann ich sie hier veröffentlichen).

Irgendwie fällt es mir schwer, diese Aufgaben zu lösen.

Bei 1a) dauert 1 Disk seek 10ms, das * 30 = 30ms. Die Gesamtgröße der Bilder sind 30 * 256 K, aber warum teils man es durch 50 MB/s?
Bei 2: Wo kommen diese 10ms am Anfang her?

Gibt es eine generelle Vorgehensweise? Ich blicke hier nicht ganz durch...

Danke!
 
Wenn du Dateien von einer (sich drehenden) Festplatte einliest (also keine SSD), dann muss zuerst der Lesekopf an die richtige Stelle fahren. Diese Zeitdauer ist die Seek Time. Bei 30 Bildern auf einer Festplatte musst du 30 mal seeken, also 30*10 ms.

Anschließend wird die Datei eingelesen. Um 1 MB einzulesen, braucht die Festplatte 20ms, also liest sie mit 50 MB/s Daten ein. Um die Zeit zu ermitteln, wie lange man für 30*256 KB braucht, teilt man die Datengröße durch die Geschwindigkeit (Wenn du wissen willst, wie lange du für 50 km brauchst, wenn du 25 km/h fährst, rechnest du auch 50 km / 25 km/h = 2h).

Bei 2) ist es anders. Da die Thumbnails hier auf 30 Festplatten verteilt sind, musst du pro Festplatte nur 1x seeken und 1x Einlesen. Und das kannst du 30 mal parallel machen.
 
Zurück
Oben