Siis kyllä sitä GPU:ta koodataan käytännöllisesti katsoen ihan perus C:llä, pienillä rajoituksilla ja käyttäen kirjastofunktioita hallintaan (mm. synkronointiin ja säikeen tunnistukseen). Ei sitä assyä tarvii nykyään enää edes katsoa (paitti ehkä tarkistakseen, että se koodi kääntyy optimaaliseksi (tätähän tarvii tehdä muutenkin aina välillä)), saati sitten koodata. SIMD-arkkitehtuurissa (ideana on siis se että eri prosessorit suorittaa samaan aikaan samaa käskyä, mutta eri datalla) noi nykyiset paradigmat riittää ihan hyvin helppoon rinnakkaiskoodin tuottamiseen.
Tavallisen monisäikeisyyden toteuttamiseen tarvittavat kirjastot on jo olleet pitkään olemassa ja windowsia lukuunottamatta aika hyvin standardoitukin (eli posix), mutta C kielenä ei ota oikeastaan mitään kantaa monisäikeisyyteen (paitsi ehkä välillisesti volatile-keywordin kautta) ja täten voi toki olla mahdollista että jokin muu kieli soveltuisi tarkoitukseen paremmin (C:n heikkous (ja vahvuus) on se, että se on niin matalan tason kieli (C++ myös)), mutta en muista nähneeni vielä kieltä, joka ottaisi tämän huomioon, saatikka hyödyntäisi sitä.
Ja kyllähän tota softaa aina välillä kirjoitetaan uusiksi - tekee vaan hyvää laadulle, kun vanhat virheet ja huonot designit kirjotetaan uusiksi.