P1: A3 - Running Numbers (Archived)

Phase 2 of the Threading Challenge 2011 - Cancelled

We know that many of you have been waiting for details of Phase 2 of the Threading Challenge 2011 to be announced. With our apologies, we must announce that Phase 2 of the Threading Challenge 2011 has been cancelled due to contest resources being re-assigned to new software development projects. So, there is not an adequate number of contest team members to manage and judge Phase 2 of the competition in a timely manner.We are sorry to disappoint those that were looking forward to the next phase of the competition, but we encourage you tolook for future competition news in 2012.

Threading Challenge 2011 Phase 1 Grand Prize Winners Announced!

Threading Challenge 2011 the Grand Prize Winners

The Threading Challenge 2011 Team would like to thank all of the Master and Apprentice participants in the Threading Challenge 2011. All of your time, programming efforts and forum conversation for the Master and Apprentice problems in Phase 1 made this years competition a big success.

Winners Announced for Apprentice Problem 3, P1:A3 Running Numbers

Apprentice Level Problem 3 - P1:A3 Running NumbersKey Scoring Principles

Basic scoring principles used for the contest entries judging are described at the official rules page. Here is a short summary: each contest entry was scored according to the following criteria: 1) up to 100 points for solutions performance (speed); 2) a maximum of 25 bonus points for a contestants activity in the forum, calculated as 5 bonus points for each valid forum post/reply.


I'm creating this thread to organize the post-mortem analysis of the Running Numbers problem. Please put any new post-mortems here. If you want to go over Maze of Life and Consecutive Primes, please create similar threads in their respective forums.

Several contestants have already put their post-mortems in another thread. I will include them here by reference:

It's been fun

The past nine weeks have been fun, educational, and a lot of hard work! I'm glad I got to know some of you here on the contest forums.

I signed up for the Apprentice Level to learn more about multi-threaded programming. Well... mission accomplished. This third problem also taught me the finer points of SSE, which was something I'd been meaning to learn.

Reminder: Apprentice Problem 3, Running Numbers, closes on Monday, June 27, 2011 at 12:00 PM (Pacific Daylight Time)

Just a reminder: Apprentice Problem 3, Running Numbers, closes on Monday, June 27, 2011 at 12:00 PM (Pacific Daylight Time). Don't forget to upload your entries by the deadline. Also, it is recommended that you zip your files into a zip file and include a text message on the programming language used and any compiling instructions. Good coding!

__m128i type

I am having an issue with the compilation in the MTL. I am using MSVC++ in home and I have a linux MTL account, so I am implementing my solutions in a portable way. For this problem I think that using SIMD instructions is the right choice, so I am using the __m128i type.

Get Bonus Points for Your Threading Challenge entry scores by participating in the Forums

Just a reminder: You can get bonus points added to your problem entry score by participating in each problem's forum. Earn 5 points for each forum post, up to a maximum of 25 points per problem. The forum points can make a difference in your final entry score. So, take advantage of this for this last problem.

Input/Output clarification

This is my understanding of the input and output descriptions:

  1. The input consists of three command line arguments, each of which is exactly 32 hex digits long.
  2. The output should be something like "574395734 cycles" printed to stdout.
  3. The program need not specify if it terminated due to all zeros or repeating the initial values.
  4. Elapsed time and units (seconds or milliseconds) should be printed to stderr.

Are any of these inferences wrong?

Assine o P1: A3 - Running Numbers (Archived)