Microsoft Research stellt Rekord beim MinuteSort auf

Ein Team von Microsoft Research hat einen neuen Rekord beim so genannten "MinuteSort"-Test aufgestellt. Dabei geht es um die Herausforderung, eine möglichst umfangreiche Datenmenge binnen nur einer Minute zu sortieren. Der bisherige Rekordhalter wurde nun gleich um ... mehr... Microsoft Research Microsoft Research

Diese Nachricht vollständig anzeigen.

Jetzt einen Kommentar schreiben
 
Naja, es liegen ja auch 3 Jahre neuere Hardware, Software und Treiberlösungen vor!?
 
@tapo: Und wieso hat man es dann nicht letztes Jahr geschafft? Irgendwas kann man immer bemängeln...
 
@Knerd: Weils da nur zwei Jahre waren :P
 
@eilteult: Wie gesagt irgendwas kann man immer bemängeln :P
 
@tapo: Lies doch mal. Im Vergleich wurde sogar weniger hardware verwendet. Klar die Hardware ist jetzt etwas neuer, trotzdem ist das beeindruckend.
 
@tapo: Anstatt "minus" zu drücken könnte man auch eine Erklärung liefern. Schnellere Hardware macht einen Teil des Geschwindigkeitsunterschieds aus. Aber das Wichtigste ist der Sortieralgorithmus. Sortieren ist eine recht komplexe Angelegenheit und es gibt sehr viele Ansätze wie man sortieren kann. Für so einen Rekord wie hier kann man nicht einfach schnelle Hardware und einen bekannten Sortieralgorithmus nehmen. Man muss eigene Algorithmen entwickeln, die diese Daten mit den vorhandenen Ressourcen effektiv sortieren.
 
@Valfar: Die einfachste sortieung ist immer noch alles rauszuschmeissen ;)
 
@Valfar: Danke für die eindeutige Erklärung
@paris: weniger Hardware heißt ja auch nicht gleich langsamer!
 
@tapo: Eine Ergänzung, wie man sich das vielleicht einigermaßen vorstellen kann: Es gibt einen riesigen Haufen mit DinA4-Blättern und auf jedem Blatt steht eine Zahl. Die Milliarden von Blättern sind einfach wild durcheinander. Das ist die Datenmenge, die sortiert werden soll. Nun hast du noch 20 Kinder die die Blätter sortieren sollen. Das sind die Prozessoren. Ein ganz trivialer Ansatz wäre, dass jedes Kind ein Blatt Papier holt. Das legt sein Blatt auf den Boden. Nun kommt das zweite Kind und legt sein Blatt daneben. Links daneben, wenn die Zahl auf seinem Blatt kleiner ist und rechts daneben wenn sie größer ist. Dann das 3. Kind. Das hat nun ein Blatt dessen Zahl genau zwischen den beiden Zahlen liegt die bereits "sortiert" sind. Das Kind nimmt nun das rechte Blatt und schiebt es nach rechts damit es sein Blatt dazwischen legen kann. Da siehst du schon viele Schwierigkeiten: Wenn du nur ein Kind hast bestimmt dieses Kind die Geschwindigkeit. Je schneller es laufen kann und je schneller es die Blätter verschieben kann desto schneller wird sortiert. Bei 20 Kindern entstehen viele Komplikationen. Die Kinder können nicht gleichzeitig ihre Blätter einsortieren. Die meiste Zeit müssen sie also rumstehen und warten (und die Wartezeit wird immer länger. Je mehr Blätter schon sortiert sind desto länger dauert das verschieben der Blätter wenn etwas dazwischen einsortiert werden muss). Bei einem solch schlechten Sortierverfahren bringt es einem fast keinen Vorteil, dass man viele Kinder zur Verfügung hat. Das heißt, man muss sich ein Sortierverfahren überlegen, bei dem die 20 Kinder möglichst ausgelastet werden (also keine Ressourcen verschwendet werden). Zudem wäre es gut wenn man das verschieben der Blätter auf ein Minimum reduzieren kann. Denn das frisst am meisten Zeit. Die Herausforderung der Programmierer ist es also, sich ein Verfahren zu überlegen, bei dem man mithilfe von 20 Kindern Zahlen sortieren kann. Das Verfahren kann bei 100 Kindern total schlecht sein, oder auch bei dem Sortieren von anderen Dingen (man kann zum Beispiel auch irgendetwas nach Farben sortieren). Das Ziel ist nur, dass es bei 20 Kindern und Zahlen effektiv ist. Und da kann es immer wieder sein, dass irgendjemand eine bessere Idee hat als alle anderen zuvor.
 
@Valfar: Zählt das nicht zur Kinderarbeit? *fg* ;)
 
@Valfar: Um es mal zu veranschaulichen kann man sich hier einen überblick verschaffen. http://www.sorting-algorithms.com/ oder auch bei http://www.iti.fh-flensburg.de/lang/algorithmen/sortieren/sortcontest/sortcontest.htm _________________wer es gar nicht versteht kann auch noch hier vorbeischauen... http://youtu.be/lyZQPjUT5B4 oder http://youtu.be/kDgvnbUIqT4 oder http://youtu.be/CmPA7zE8mx0 nur das man mal ein paar Beispiele gesehen hat.
 
@Valfar: Klasse Beispiel!
Kommentar abgeben Netiquette beachten!