Accelerate Your Code

/sites/default/files/m/b/f/6/banner_deutsch.png


degb fr ru

Winners are announced here !

The goal of the contest is to optimize and parallelize a reference algorithm and code.
The criteria : execution time (on various single memory machines/inputs/conditions)
Code, example input and expected output are provided : here. Code is the reference, but to make it easier for you to understand the code, here is an explanation :
Problem : Compare 1 reference sequence (in a file) with a variable number of sequences (from 1 or more files).
Sequences are composed from 4 characters : A,T,C,G.
Comparison : Find substrings of >= N characters matching exactly.

Parameters :
  • maximum number of worker threads to use.
  • minimum matching size (N).
  • reference sequence file (one sequence - one file)
  • following arguments : sequence files to compare (one or more sequences per file)
Example : ./run 24 16 refseq.txt input.txt
See output.txt for an example of an expected output.
Important : Result has to be exactly the same as this reference code for any set of input-output-parameters. More input-output files will be posted on the contest page later to help you test your code.
Testing and benchmarking : You should have received an email regarding the procedure of upload and testing.
Advices : Think parallelism on a lot of cores, think potential for execution time acceleration, not algorithmic tricks.
Tips : For top performance, check vectorization and STTNI instructions in SSE4.2

You still can register after the beginning of the contest !

Zeitraum: 16. April bis 16. Mai

Die Regeln sind einfach: Eine Aufgabe wird von einem unserer besten Software Ingenieure im Bereich Parallelprogrammierung gestellt. Die Aufgabe beinhaltet Daten sowie Infos zum erwarteten Ergebnis. Die Geschwindigkeit eures Codes und seine Skalierbarkeit wird das größte Bewertungskriterium sein. Euer Code wird in einer echten Arbeitsumgebung auf einem Intel Cluster getestet. Danach erhaltet ihr einen kompletten Report (über Leistung & Probleme) bezüglich eures Codes.

Teilnahme von Studenten

Alle Studenten in Europa, dem mittleren Osten, Afrika und Russland können teilnehmen. Ziel ist es, Anfängern die Parallelprogrammierung näher zu bringen. Der Wettbewerb richtet sich nicht an Spezialisten, die ihr Können zeigen wollen. Lasst euch nicht abschrecken und macht mit! Ihr könnt allein oder zu zweit als Team teilnehmen. Ihr könnt euch bei Bedarf von euren Professoren oder erfahrenen Entwicklern unterstützen lassen. Um teilzunehmen müsst ihr euch auf der Registrierungsseite anmelden. Ein Student kann jeweils nur in einem Team am Wettbewerb teilnehmen. Beide Studenten müssen jeweils einen eigenen Intel® Developer Zone Account besitzen. Anmelden könnt ihr euch hier.

Teilnahme einer gesammten Klasse

Es ist ebenfalls möglich, dass ein Dozent/Professor eine gesammte Klasse zum Wettbewerb anmeldet. Für diese Klassen werden spezielle Preise, Auswertungshilfsmittel, Bewertungssysteme etc. bereitgestellt. Für mehr Infos wendet euch bitte per Email an uns.

Eine optimale Gelegenheit

Wir sind uns bewusst, dass einige sehr gute Entwickler unter euch an dem Wettbewerb teilnehmen werden. Da Intel stets auf der Suche nach neuen Talenten ist, arbeiten wir eng mit unserer Personalabteilung zusammen, um euch den besten Einblick in das Unternehmen zu gewährleisten sowie Informationen über Jobangebote bei Intel bereitzustellen. Für mehr Infos, folgt diesem Link.

Eventuell sind einige Grundlagen der Parallelprogrammierung notwendig um die Aufgabe zu lösen. Dazu empfehlen wir folgende Videos.

Zusätzlich könnt ihr euch weitere kostenfreie (non-commercial) Tools herunterladen, mit denen ihr euren Code weiterentwickeln, testen und verbessern könnt.

Nehmt teil und habt Spaß euer Wissen zu erweitern!

 

Accelerate Your Code ist ein internationaler Wettbewerb.

Wir bitten daher um euer Verständnis, dass einige Texte sowie alle Seiten der weiterführenden Links inkl. Lehrmaterialien in englischer Sprache ausgeführt sind.

Para obtener información más completa sobre las optimizaciones del compilador, consulte nuestro Aviso de optimización.