(題外話:很多其他回答對於並列演算法的認識很膚淺啊。說什麽並列演算法簡單粗暴的,依賴硬件的,真是呵呵了。說平行計算相關的演算法和普通的演算法競賽差距太大,也是因為並列演算法的學習門檻比較高。競賽中的問題(除了網絡流)用到的演算法都能並列,不過以一般OI選手的學習能力,大概花半年到一年的時間還達不到學習到這類演算法的階段。而把這些時間花在學現在的競賽題,那早就可以在OJ上刷的風生水起了。這也從層面說明了並列演算法難度過大,不適合作為競賽內容。因此致力於簡化並列演算法也是我們目前主要的課題之一。)
我也是不太認同將並列加入程式競賽的,因為設計好的並列演算法需要對於architecture的了解,需要很多細節的考量,這個和ICPC之類抽象的層面解決問題的要求是背道而馳的。
其實對於並列演算法的競賽問題,我們業界內也是有過很多討論的。像現在ISC這種主要靠「搞」的比賽明顯是不可取的(因此你看除了中國之外,世界上並沒有主流學校參與,也沒有意願參與。ACM/ICPC世界上還是所有名牌大學都參與的)。但是由於並列演算法太難,簡單的問題都有現成的寫法,稍微有點難度的問題所需要的知識一般本科階段的理解力基本掌握不了,因此也是很頭疼的事情。
ps. 經評論指出,其實很多其他答案和評論說的是(並列編程/語言/實作),不是並列演算法。當然這些是學習並列演算法的基礎,但是不是一碼事。類比學習C++/Java語言和學習演算法。既然說到競賽,那肯定是指演算法,畢竟也沒有C++/Java語言比賽(除了混亂C大賽),只有演算法競賽。不過非常遺憾的是除了復旦的唐老師之外,我還不知道國內有誰還算是比較懂並列演算法的了,於是如此完善的一個演算法體系,並沒有任何中文的教材和中文的課程,所以大家根本不知道他的存在也就不足為奇了。(所以說中國的CS教育和美國的差距還有好幾光年啊!)