3 april 2011

Een week verder. Wat inhoud er komt weer een verhaal aan.

Ook deze week heb ik aan mijn stage opdracht lopen werken hoewel het nog steeds erg veel lezen is en daarnaast veel opschrijven komt het einde nu wel langzaam in zicht zodat ik ook daadwerkelijk aan de verbeteringen kan gaan beginnen. Aan het einde van de week tijdens mijn wekelijkse meeting met mijn opdrachtgever was er zelf een hoofd ontwikkelaar aanwezig die ervaring had heeft met het soort programma waarmee ik werk en heeft me alvast wat hints en tips gegeven wat wel te doen en wat niet.

DeSTIN bestaat uit nodes waarbinnen een cluster ontstaat. de nodes produceren een signaal door het midden te nemen van het cluster wat ook wel een centroid genoemd word. Over de centroid is veel onduidelijkheid en het word er maar niet duidelijker op dus houd het even bij deze waarneming. Dit alles gebeurt in een layer ook wel laag vertaald in het Nederlands. Iedere laag doet precies het zelfde alleen de hoogste laag heeft heel weinig nodes en de laagste heel veel. iedere node leest of een laag lager uit of zelf een plaatje of later video streams.

Omdat iedere node het zelfde doet zou dit uitstekend geschrikt zijn voor parallellisme wat inhoud dat je een zelfde taak in plaats van in serie uitvoert het tegelijk uitvoert. Om een kleine rekensom te illustreren een plaatje van 800 x 600 =  480000 pixels groot. De laagste laag kijkt per node met een diameter van 4×4 = 16. 480000/16 = 30000 nodes één laag hoger kijk vervolgens met een weergaven van 2×2 per node naar de laag lager. 30000/4 = 7500. Één laag hoger weer 7500/4 = 1875 enz enz. Totdat je nog maar een paar nodes overhoud of zoals wij nu met een plaatje van 32×32 doen eindigend met 1.

30000+7500+1875+… +/- = 40000 nodes die allemaal het zelfde doen. Hier komt CUDA om de hoek kijken 40000 x het zelfde doen kan ik ook op de CPU doen alleen heeft die met de aller nieuwste chips maar 8 cores terwijl de GPU vrolijk een paar honderd ter beschikking heeft. En CUDA wordt erg gelukkig als het iets kan uitvoeren dat het liefst per 1000de word opgestart. Misschien ben ik al wat lezer kwijt maar de nummer zijn wat vreemd. waarom zou iets met 1000de opgestart worden als je maar 100 cores ter beschikking hebt. Een programma draait meestal op één of meer threads. 1 core can meerdere threads runnen. In het geval van CUDA kunnen er blokjes met 64,128 of 256 threads opgestart worden en +/- 65000 bloks per kaart gelanceerd worden ook wel grid genoemd.

Of in andere woorden DeSTIN heeft veel kleine identieke taken met CUDA kan ik die vele kleine taken tegelijk uitvoeren. Waarna je alle berekende waardes als een grote bulk weer terug krijgt. Op dit moment ideaal te noemen.

(meer…)

Het is inderdaad een week geleden. En deze week is dan ook geheel gepland om DeSTIN te begrijpen. Dus ik zou hier een heel lang verhaal neer kunnen zetten dat ik heb lopen lezen en nog meer lopen lezen dingen lopen opschrijven en lezen. Maar dan zou het wel heel snel saai worden. Dus op naar het volgende onderwerp.

Om jullie geïnformeerd te houden over mijn communicatie met school. Na ruim 4 weken wachten en zo’n 30 mailtjes a 10 A4tjes vol met tekst eindelijk een reactie van de persoon die mij hoort te antwoorden. Ja je kan dan wel 4 man binnen school over dit onderwerp aanschrijven maar er is geen proces die zegt wanneer punt 1 niet werkt dan doet punt 2 het. En zoals de vuistregel op school is “de student is zelf verantwoordelijk”.
Houd dit in dat wanneer een student een probleem heeft met een docent het de student zijn probleem is.

Wil ook zo’n regel

  1. Ik heb gelijk.
  2. Wanneer ik geen gelijk heb treed regel 1 in werking.

Dus ik heb altijd gelijk. Dus er is weer contact met de juiste persoon nu alleen alle voorgaande mailtjes netjes afhandelen het proces moet wel netjes afgehandeld worden. En hopelijk ook wat lessen uit geleerd worden.
Als er meer te melden valt dan zal ik dat wel melden maar op dit moment is het nu wel even klaar met dit onderwerp.

Verjaardag ja dat is waarschijnlijk het gedeelte wat jullie willen lezen. Dus speciaal voor jullie de link (More…)

(meer…)

20 maart 2011

We zijn weer een week verder.

Het resultaat van deze week is dat er nu een klacht bij school is neergelegd met betrekking tot de voortgang van mijn stage.

Wat heb ik deze week nog meer gedaan na heel veel code door gespit te hebben en er nu nog meer wijsheid van dit pracht programma verkregen te hebben ben ik pas op de helft. Het programma hoe kon het ook anders is best complex en om even CUDA hierop los te laten is toch wel wat meer uitzoekwerk nodig. Ook de nodige frustraties met Linux (2de besturing systeem van mijn laptop) weer achter de rug. Er was mij verteld dat het verstandig is een profiler mee te laten lopen met de code zodat ik kan zien waar het zware werk wordt verricht. In Windows Visual Studio gaat die natuurlijk vanzelf als je op de debug knop klikt in Linux hoe zij het ook anders niet. Weer wat exotische commando’s verstopt in handleidingen van 12 pagina’s groot nee Linux is super gebruiks vriendelijk. Op 1 punt ben ik het daar wel mee eens een bibliotheek aan je code toevoegen gaat in Linux veel makkelijker dan in Windows. Zo alweer genoeg gezegd over dit onderwerp.

(meer…)

13 maart 2011

Een week verder.

Na wat gepingpongd met school te hebben ben ik nog niet veel opgeschoten met wat volgens de planning zou moeten gebeuren. Maar heb nu wel een deadline wanneer mijn contact persoon met school met mij contact moet opnemen.

Met dit zinnetje vooraf is eigenlijk alles gezegd wat ik op dit moment wil zeggen over de communicatie met Hogeschool Leiden.

Wat heb ik in week 4 gedaan. Zoals misschien niet iedereen zou denken gewerkt 😛 hoewel mijn Chinese collega’s nog wel eens van slapen houden en ze met betrekking tot het plannen niet erg veel lijken te doen. Zie ik toch wel degelijk dat er bij sommige wat gebeurt. Zo geven ze lessen of moeten ze presentaties houden. Ze worden nerveus wanneer ik erbij kom zitten want misschien moeten ze het dan wel in het engels gaan geven. Meestal krijg ik een persoonlijke vertaler naast me die de hoofdpunten vertaald zodat ik weet waarover het gaat en dat ik ook vragen zou kunnen stellen.

(meer…)

5 maart 2011

Het is al weer even stil vanaf mijn kant dus vandaar een berichtje hier.

Hoewel ik het nog niet echt interessant vind om over mijn stage werkzaamheden zelf te schrijven. Komt hier dan toch een stukje hoe mijn dagelijkse bezigheid er op dit moment uit ziet.

Zoals de meeste mensen sta ik op een vast tijdstip op neem ik een douche, ontbijt ik en neem ik de bus naar mijn stage welk welgeteld 1 Yuan (+/- 0,10 euro) kost. Vervolgens loop ik 9 trappen(5 in het gebouw 4 om bij het gebouw zelf te komen) op om bij mijn werkplek aan te komen. Daar aangekomen gaat mijn laptop aan en ga ik aan de slag. Wat ik op dit moment doe is voornamelijk analyseren en leren. Mijn opdracht is duidelijk zorg ervoor dat een programma wat traag is snel gaat werken door middel van het werk wat die doet in kleine stukjes te hakken en te voeren aan een machine die heel veel kleine taken tegelijk kan uitvoeren. (Parallel programming).

Zo rond een uurtje of 11:30 a 12:00 beginnen ik en mijn collega’s honger te krijgen. She Fan (mijn chinees typen is nog steeds op zijn Nederlands) wat inhoud kom eten of eigenlijk vragen ze heb je al je rijst op gegeten :). Vervolgens al die trappen weer af en door de poort naar buiten naar een garagebox of een dak restaurant. Aangezien mijn collega’s het leuk vinden met mij te eten en ze daarvoor ook speciaal naar het werk komen rond lunch tijd zijn we meestal met een man of 5 a 8.

(meer…)

21 februari 2011

Vandaag begon als een rustige dag, dit weekend was niet super bijzonder te noemen.

Op zaterdag een Chinese bankrekening geopend en er voor gezorgd dat mijn studentenkaart met bus functie volledig zou werken.

Op zondag was het een dag van waar is mijn internet. Ik heb betaald voor internet ik wil internet. Na het opzoeken van de het probleem kwam ik er achter dat ze de bekabeling aan het vervangen waren die naar het verdeelpunt ging van mijn internet. Nu snap ik zelf wel dat daardoor het internet niet werk en dat dit meer ten voordelen voor mij is. Dit kon ik bevestigen aan de eind van de dag. Aangezien de verbinding nu niet meer lijkt op een inbelverbinding maar meer op een ADSL verbinding. Het Skype gesprek ging vervolgens ook vele malen beter dan voorheen.

Terug bij de dag van vandaag en ook de reden van de titel van dit verhaaltje. Terwijl ik rustig aan het werk was aan het project en ik het gevoel kreeg dat het wel wat druk werd om me heen en ik mijn naam best vaak voorbij hoorde komen tijdens dat Chinese gebrabbel. Keek ik maar eens om wat er nauw gaande is. Tot mijn ontdekking was iedereen bij elkaar geroepen dus uit hun vertrouwde cubicles. Wat blijkt ze moeten een demo gaan geven dat ze wel productief zijn. Wat inhoud dat die robot die in de kluis stof licht te verzamelen weer eens aan de slag moet.

(meer…)

15 februari 2011

Dag twee opstaan douche, aankleden, eten en naar het lab.

Om 16:00 moest ik bij een jij bent een vreemdeling meeting bijwonen. Vooraf werd vermeld dit gaat 1 uur duren.
Na uitleg over van alles en nog wat bleef ik met meer vragen zitten dan dat er beantwoord waren. Wat me wel duidelijk is geworden is dat ik even een Chinese bankrekening moet nemen.
Dit omdat anders een E-Card die ik gekregen heb van de school niet werk (Handig), dit kaartje kan ik mee met de bus en ik kan er mee betalen binnen de campus. Buiten de campus krijg ik korting.

Na het geheel aangehoord te hebben en ik maar even naar de kamer ernaast liep om een in paniek geraakte mevrouw weer terug te sturen. Het is dan 18:00 ja Chinese tijd is nog steeds flexibel alleen hun regels niet.
Word ik opeens ben jij Xavier geroepen. Een kerel genaamd Tosh van de Universiteit Amsterdam zit daar. Hij bleek mijn papieren gehad te hebben en zodoende wist hij dat er nog een Nederlander in de buurt zou zijn.
Na wat gepraat te hebben en telefoon nummer uitgewisseld ging ik naar huis.

Misschien vanavond nog even naar een kroeg.

14 februari 2011

De vakantie periode is voorbij wat betekend dat ik aan de slag ga binnen Xiamen University.
Ik zal daarbij een stuk software omschrijven dat het in plaats 1 ding tegelijk kan naar als ik het zelfde x keer tegelijk moet doen splits het werk dan ook op in x kleine stukjes.
De reden hiervoor is dat we tegenwoordig meerdere processoren in onze pc hebben zitten en 1 daarvan is tegenwoordig ook een die heel snel is in video verwerking.
Aangezien gezichtsherkenning een en al beeld is lijkt de keuzen op dit moment makkelijk gemaakt. (meer…)