Saturday, February 27, 2010

2010 MEMOCODE Hardware/Software Co-Design Contest

It looks like Monday is the kickoff of the fourth hardware/software co-design contest put on by the IEEE conference, MEMOCODE. Three years running, an MIT team, powered by Bluespec, has won honors in the event, typically in pretty dramatic fashion over alternative approaches, such as using RTL or C.

MEMOCODE Contest 2009
MEMOCODE Contest 2008
MEMOCODE Contest 2007

This year, if I read it right, it looks like the MIT team has been sidelined, opening up the field. Almost everyone involved in previous MIT winning teams is involved in developing this year's reference design -- so, they won't be participating again. I haven't heard about any teams from MIT unrelated to the CSAIL architecture team getting involved.

Here's an excerpt from the announcement email I received:

Who is organizing this year's contest?
-----

This year's contest was coordinated by Joel Emer (Intel) and Forrest Brewer (UCSB). The reference design was implemented by Michael Pellauer (MIT), Asif Khan (MIT), Muralidaran Vijayaraghavan (MIT), Abhinav Agarawal (MIT), and Man Cheuk Ng (MIT). It was tested by Richard Uhler and Kermin Fleming (MIT).

The co-design contest is a really interesting event. The format of the contest is the same every year. On the first day, a problem is published with a reference design. Participating teams get a month to improve the performance of the reference design -- the solutions with the most speedup win. This year's solution is described as a deep packet inspection problem, with a "twist".

If you'd like to participate or you are interested, you can find out more information at: http://memocode2010.csail.mit.edu/redmine/wiki/memocode2010

Here's the full email I received:

Prepare for the 2010 MEMOCODE Hardware/Software Co-Design Contest!
http://memocode2010.csail.mit.edu/

Apologies if you receive multiple copies of this posting. Please distribute further to all interested parties.

* What is the 2010 MEMOCODE Hardware/Software Co-Design Contest?
-----

MEMOCODE is short for the IEEE International Conference on Formal MEthods and MOdels for CO-DEsign. This year's conference will be held in Grenoble, France (http://www-memocode2010.imag.fr/). Every year the conference holds a design contest in order to promote hardware-software interaction and push the envelope of parallel system description.

* How do I participate? Do I have to attend the conference?
-----

The conference happens in July, but the contest itself happens from March 1st to April 1st. Participation is done in a distributed manner via the Internet. The problem will be sent out to participants via the webpage (http://memocode2010.csail.mit.edu/). Teams do not need to attend the conference in order to participate, although in years past the winners have attended and given talks on how they solved the problem.

* Do I need to be a student or graduate student in order to participate?
-----

No. Anyone can participate. We welcome participation from industry teams as well.

* Can I join multiple teams?
-----

No. The only limitation is that each person can only be a member of a single team.

* What is this year's contest problem?
-----

This year's contest problem will be revealed on Monday March 1st, at 12:01 US Eastern Time (GMT-5). At this time we are prepared to reveal that the problem will involve Deep Packet Inspection... with a twist!

* What are the official supported platforms?
-----

This year the official platforms are the Xilinx University Program XUP boards, which include a Virtex 2 version, and a newer version with Virtex 5 FPGAs. The contest organizers have ported the reference design to these platforms, and tested the result.

* Can I use a different platform?
-----

Absolutely. We welcome submissions using whatever platform you think is best. The only thing to keep in mind is that by using a different platform you take on the responsibility of porting the reference design to that platform. While the contest organizers can provide some advice about porting based on our knowledge of the reference design, the majority of the burden of the porting process will fall on your shoulders.

* Does my platform need to include an FPGA?
-----

Nope. Feel free to use a GPU, a vector computer, a multicore, or anything else that you think would be a good platform for this year's problem.

* Can I do a software-only implementation, like making a multi-threaded parallel software version?
-----

Absolutely. The reference design this year includes a single-threaded software-only X86 implementation. This version is meant to serve as a starting point for all software-only solutions.

* Since the problem involves Deep Packet Inspection will my platform need include Ethernet?
-----

No. To increase portability and lower the implementation burden on contestants we have decided to simulate all interactions with Ethernet. The details of this will be announced with the contest.

* What are the prizes?
-----

The exact prizes are still under determination. The winning team will be awarded a significant cash award. A total of $2000 was awarded in prizes last year. Each team that submits a complete and working entry will be invited to submit for review a 2-page abstract for the formal conference proceedings; winning teams will be invited to contribute a 4-page short paper.

* Are there separate prizes for "normalized" and "absolute" categories?
-----

Past contests have used a normalization technique in order to try and make an "apples to apples" comparison between different platforms and FPGAs. This lead to disagreements over what the normalization function should be and if it artificially favored certain platforms over others. This year we have decided to do away with normalization. While we may have a separate prize for the best design using an officially supported platform, the exact details are currently still being determined.

* Who is organizing this year's contest?
-----

This year's contest was coordinated by Joel Emer (Intel) and Forrest Brewer (UCSB). The reference design was implemented by Michael Pellauer (MIT), Asif Khan (MIT), Muralidaran Vijayaraghavan (MIT), Abhinav Agarawal (MIT), and Man Cheuk Ng (MIT). It was tested by Richard Uhler and Kermin Fleming (MIT).

* What can I do if I have any questions or concerns?
-----

Please e-mail the organizers at organizers@memocode2010.csail.mit.edu

Monday, February 22, 2010

Great Tweet!

Loved seeing this Tweet this morning: