Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

SpikeFun - Artificial Nervous System Demo

[es] :: Veštačka inteligencija :: SpikeFun - Artificial Nervous System Demo
(TOP topic, by Gojko Vujovic)
Strane: << < .. 2 3 4 5 6 7 8 9 10 11 ... Dalje > >>

[ Pregleda: 99158 | Odgovora: 401 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo30.05.2012. u 22:05 - pre 79 meseci
Malo sam eksperimentisao sa mogucnostima skaliranja SpikeFun-a :)

Na primer, 8 miliona neurona sa 1.45 milijardi sinapsi:



Nekoliko zanimljivih fakata:

- Simulacija zauzima 130 GB RAM-a
- Dodatnih 20 GB RAM-a je potrebno za pomocne podatke (vizualizacija, DSI traktovi, ...)
- Za procesiranje jedne sekunde simulacije je neophodno "provuci" oko 200 TB podataka kroz procesor
- Za vodjenje aksona je "izvuceno" 16 miliona DSI traktova
- Kreiranje simulacije je trajalo oko 1 sat i 10 minuta na 16-core masini
- Prosecan broj sinapsi po neuronu je ~175
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

Texas Instruments

Član broj: 227540
Poruke: 241
95.180.72.*



Profil

icon Re: SpikeFun - Artificial Nervous System Demo30.05.2012. u 23:30 - pre 79 meseci
Xe, xe. Samo se ti igraj, videćeš kad jednog dana računar dobije ekstremitete i odšeta iz sobe. :)
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.hsi.kabelbw.de.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo31.05.2012. u 12:18 - pre 79 meseci
Nece nece - imam prekidac :)
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

mr. ako

Član broj: 65959
Poruke: 2368



Profil

icon Re: SpikeFun - Artificial Nervous System Demo31.05.2012. u 13:35 - pre 79 meseci
Citat:
Ivan Dimkovic
Nekoliko zanimljivih fakata:

- Simulacija zauzima 130 GB RAM-a
- Dodatnih 20 GB RAM-a je potrebno za pomocne podatke (vizualizacija, DSI traktovi, ...)
- Za procesiranje jedne sekunde simulacije je neophodno "provuci" oko 200 TB podataka kroz procesor
- Za vodjenje aksona je "izvuceno" 16 miliona DSI traktova
- Kreiranje simulacije je trajalo oko 1 sat i 10 minuta na 16-core masini
- Prosecan broj sinapsi po neuronu je ~175


Uh ovo je odlican izgovor da UVEK imas najnapucaniji komp u stanu, bez da se zena/devojka ljuti sto trosis hiljade evra na isti... :P ...ustvari, ljutice se one u svakom slucaju, al bar imas opravdanje. :D

- Il n'est pas important qui, importe c'est quoi!
 
Odgovor na temu

ventura

Član broj: 32
Poruke: 7781
*.static.isp.telekom.rs.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo31.05.2012. u 14:00 - pre 79 meseci
Taj server mora da vuče kilowat struje, što ako radi 24/7 po Nemačkim tarifama dođe oko 200 evra mesečno :)

 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.hsi.kabelbw.de.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo31.05.2012. u 16:57 - pre 79 meseci
Verovao ili ne - ne vuce :)

Bas cu da izmerim veceras ako stignem - memorija vuce oko 65W, procesori vuku oko ~160-180W (oba) u full-loadu (undervoltovani), graficka oko 200W pod load-om... cipset je verovatno oko 20W, hardovi 50-tak max., SSD-ovi 10-15...

Sve u svemu, sumnjam da ide preko 500-600W, ako i toliko.

Razlog je sto Xeon E5 ne mozes da overclock-ujes, nominalni TDP po komadu je 150W ali u praksi zbog niske voltaze + dodatnog undervoltinga ne prelazi 100W ni u najgorem load scenariju. Da je Intel dopustio overclock kao na consumer verziji Sandy Bridge E procesora onda bi pricali o necemu drugom, sa 1.35v i 4 GHz bi 2687W vukao bar 200W ako ne i vise.

Trenutno oba procesora hladim sa tihim Noctua ventilatorima, i temperatura na otvorenom kucistu ne prelazi 50C.

Citat:
mr.ako
Uh ovo je odlican izgovor da UVEK imas najnapucaniji komp u stanu, bez da se zena/devojka ljuti sto trosis hiljade evra na isti... :P ...ustvari, ljutice se one u svakom slucaju, al bar imas opravdanje. :D


Hehe yep :)
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 867
*.dynamic.isp.telekom.rs.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo31.05.2012. u 17:01 - pre 79 meseci
Haha, nasmejali me kometari, pa moram da dodam, Ivane gasi internet kada to cudo radi, mozda skonta samog sebe pa dobijemo skynet :-)
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo31.05.2012. u 19:40 - pre 79 meseci
Hehe

Evo izmerih sada potrosnju - u idle-u makina vuce 210W a u full load-u 448W.

Cenim da idle potrosnja moze da se spusti jos, i da vecina iste dolazi od GTX580 graficke.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

ventura

Član broj: 32
Poruke: 7781
*.dynamic.sbb.rs.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo01.06.2012. u 00:10 - pre 79 meseci
Znači 85 evrića za struju mesečno :)
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo01.06.2012. u 12:43 - pre 79 meseci
Pa dobro ne trci taj server 24/7 - u standby modu trosi oko 20-tak W a imam wake-on-demand ako mi treba kada nisam qci :-)

Struju kupujem unapred, 4000 kWh za godinu dana "prepaid" - do sada jos nisam dobio ekstra racun :-))

Morao sam da doplacujem ranije, dok sam imao staru Core 2 Extreme masinu sa GTX 8800 grafickom - ta zver je trosila preko 800W u load-u, zahtevala je vodeno hladjenje (cak sam uradio volt-mod na grafickoj) i vise puta mi je iskakao glavni osigurac zbog te masine... to su bila vremena.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

ventura

Član broj: 32
Poruke: 7781
*.static.isp.telekom.rs.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo01.06.2012. u 13:36 - pre 79 meseci
Citat:
Ivan Dimkovic:
Struju kupujem unapred, 4000 kWh za godinu dana "prepaid" - do sada jos nisam dobio ekstra racun :-))

Offtopic: Koliko plaćaš kWh struje u prepaidu?

 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo02.06.2012. u 21:03 - pre 79 meseci
Oko soma evrica godisnje give or take...
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo03.06.2012. u 20:23 - pre 79 meseci
v0.71 is out...

http://www.dimkovic.com/node/7

Code:

v0.71 - Released on June 03rd 2012
----------------------------------

  * Improved DSI tract mapping

  * Automatic cortical thickness scaling

  * Improved simulation creation speed with SSE4-optimized
    segment-triangle hit testing (used for neuron topology
    build-up) and further small optimizations

  * Even faster pseudo-random number generator

  * Added SSE4-optimized DLL builds for newer Core 2 and
    first generation Core i3/5/7 computers


Ova verzija donosi 10-20% ubrzanje u kreiranju simulacija, zahvaljujuci rucno raspisanim asemblerskim rutinama za testiranje presecanja duzi sa trouglovima kao i jos brzi pseudorandom generator (na masinama koje imaju SSE4).

Takodje, od ove verzije se intenzivno koriste neke SSE4 instrukcije kao recimo dpps (skalarni proizvod) - zbog toga sam kreirao i posebne SSE4 dll-ove za ljude koji jos nemaju Sandy Bridge ali imaju bar 45nm Core 2 (ili prvu generaciju i7 masina - Nehalem/Westmere). SSE4 optimizacije se, naravno, automatski koriste u AVX modu.

Jos malo je doteran i DSI tracking tj. ko-registracija (uravnavanje) sa korteksom... Takodje, od ove verzije se automatski racuna debljina korteksa na osnovu scaling-factora celog mozga, nema potrebe da se eksplicitno navodi u konfiguracionim parametrima (mada je sada dodata opcija za dodatno forced skaliranje ako neko zeli da eksperimentise).

DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo03.06.2012. u 23:26 - pre 79 meseci
Posto je vrlo brz, okacio sam kod pseudorandom number generatora ovde:

http://www.dimkovic.com/node/22

Kod koristi SSE4 (kad moze) i brzi je nekih ~27 puta od MSVC rand() implementacije. I ne samo sto je brzi, vec je i daleko kvalitetniji po pitanju "slucajnosti" izlaza. U pitanju je MWC1616 algoritam (MWC = Multiply-with-carry) ciji je autor George Marsaglia. Period ovog algoritma je veci od 10^18, i kao takav je drasticno bolja alternativa od rand() implementacije u MSVC-u - kako po statistici tako i po brzini.

Na test masini, koristeci jedno jezgro moja SSE4 implementacija moze da generise oko 2 milijarde slucajnih brojeva u sekundi. Microsoftov rand() za istu kolicinu brojeva radi 27 sekundi. To prakticno znaci da za generisanje jednog pseudo-slucajnog broja moja MWC1616 implementacija trosi oko 1.5 ciklus ili ~0.5 ns.

Uskoro (sledece godine :-) ce biti moguce udvostruciti performanse uz pomoc AVX2 instrukcijskog seta koji ce biti lansiran sa Haswell arhitekturom. Doduse, vec Ivy Bridge ima hardverski generator slucajnih brojeva koji su FIPS-140 kompatibilni, ali je u stanju da ispuca manje brojeva za isto vreme (oko 2-3 Gbps).

Kod mozete skinuti odavde, kod je licenciran pod BSD licencom, tako da ga mozete koristiti u vasim projektima.

Implementacija je neverovatno jednostavna - evo SSE4 snippeta, koji koristi SSE intrinsics f-je, pa bi trebao da radi na svakom postenom kompajleru:

Code:

//////////////////////////////////////
// MWC1616 --> SSE4 version         //
// Copyright (C) 2012 Ivan Dimkovic //
// Licensed under BSD license       //
////////////////////////////////////// 

static inline void FastRand_SSE4(fastrand *f)
 {
  __m128i a = _mm_load_si128((const __m128i *)f->a);
  __m128i b = _mm_load_si128((const __m128i *)f->b);
 
  const __m128i mask = _mm_load_si128((const __m128i *)f->mask);
  const __m128i m1 = _mm_load_si128((const __m128i *)f->m1);
  const __m128i m2 = _mm_load_si128((const __m128i *)f->m2);
 
  __m128i amask = _mm_and_si128(a, mask);
  __m128i ashift = _mm_srli_epi32(a, 0x10);
  __m128i amul = _mm_mullo_epi32(amask, m1);
  __m128i anew = _mm_add_epi32(amul, ashift);
  _mm_store_si128((__m128i *)f->a, anew);
 
  __m128i bmask = _mm_and_si128(b, mask);
  __m128i bshift = _mm_srli_epi32(b, 0x10);
  __m128i bmul = _mm_mullo_epi32(bmask, m2);
  __m128i bnew = _mm_add_epi32(bmul, bshift);
  _mm_store_si128((__m128i *)f->b, bnew);
 
  __m128i bmasknew = _mm_and_si128(bnew, mask);
  __m128i ashiftnew = _mm_slli_epi32(anew, 0x10);
  __m128i res = _mm_add_epi32(ashiftnew, bmasknew);
  _mm_store_si128((__m128i *)f->res, res);
 }


SSE4 verzija koristi pmullud instrukciju koja omogucava da se u jednom prolazu pomnoze 2 vektora sa 4 32-bitna integera. Za CPU-ove bez SSE4 to mnozenje se mora razbiti na 2 dela - visi i nizi 16-bitni, i 32-bitni rezultat se na kraju dobija shift-ovanjem i OR-ovanjem medju-rezultata, sto zahteva nesto vise instrukcija od SSE4 verzije.


[Ovu poruku je menjao Ivan Dimkovic dana 04.06.2012. u 01:25 GMT+1]
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo10.06.2012. u 23:16 - pre 79 meseci
v0.72 is out:

http://www.dimkovic.com/node/7

Code:

v0.72 - Released on June 10th 2012
----------------------------------

  * Updated tractography module to the latest DSI Studio
    code-base (June 4th)

  * Better fiber source (more inclusive brain mask generated
    with non-linear registration of T1 MRI to DSI B0 and
    extracting brain mask from the registered structural MRI
    image)

  * Improved DSI tract->surface mapping accuracy with very
    little performance penalty for the level 0 (see below)

  * Added option to control the DSI tract->surface mapping 
    precision (accuracy) with '-dsimaplevel <n>' switch, 
    where n can be:

      0    --> Fastest mapping (precision better than v0.71)
      1    --> Better precision
      2    --> Best precision (slowest)
  
    Default mapping level as of v0.72 is 2, you can get it
    to lower level if you are running the simulation on a
    slower computer and feel that DSI tract to surface
    mapping is taking too much time

  * Fixed DSI tract rendering bug (extra lines)


Verzija 0.72 donosi znacajno unapredjen proces kreiranja konektoma. Fiber tracking biblioteka bazirana na DSI Studio kodu je upgrade-ovana na najnoviju verziju koda.

Ali to je samo pocetak - sam kod za mapiranje traktova na kortikalne i talamicke strukture je ispisan ponovo tako da je preciznost drasticno unapredjena. Ovo za rezultat ima anatomski-korektno mapiranje konekcija.

Sledece unapredjenje je u samom izvoru traktova - u predhodnim verzijama je korisceno automatsko kreiranje mozdane maske kao ulazni parametar za generisanje fibera. Na zalost, DSI Studio propusta bitne strukture i ima suvise grub algoritam za generisanje maske. Ovo je popravljeno tako sto koristim FreeSurfer za kreiranje maske a onda tu bolju masku importujem u DSI Studio. Rezultat je potpuniji seeding region za traktove.

Takodje, uravnavanje anatomskih i povezujucih izvornih podataka je poboljsano posto sada koristim i T2 snimak i registraciju izmedju T1/T2 i DSI MRI snimaka. Rezultujuca afina transformaciona matrica sa 12 tacaka se koristi u SpikeFun engine-u za transformaciju traktova tako da se oni slazu sa kortikalnim itd... povrsinama. Ova procedura je neophodna posto DSI snimci obicno imaju distorzije i nisu identicni strukturnim T1 MRI snimcima (koji se koriste za kreiranje povrsina). Bez korekcije distorizija dolazi do razlike tj. gresaka u pozicioniranju traktova na kortikalne i sub-kortikalne strukture koje su generisane uz pomoc T1 MRI snimka.

Sve u svemu, koga zanima vise o tome kako sve to funkcionise: http://www.dimkovic.com/node/23

Za one koje mrzi da citaju, rezultat je jednostavno opisati slikom:



Uravnato k'o da je lenjirom izvuceno :)

DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
Prikačeni fajlovi
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo17.06.2012. u 23:52 - pre 79 meseci
v0.73 is out...

http://www.dimkovic.com/node/7

Code:

v0.73 - Released on June 17th 2012
----------------------------------

  * Improved neuron and axon vertical placement using
    interpolated mesh normals and cortical thickness
    (interpolation using barycentric coordinates of the 
    cortical/thalamic mesh triangles below which somae/axons 
    are located)

  * Further improvements (precision) of DSI tract mapping

  * Added option to limit the number of tracts that will be
    rendered (-trdrawlimit <N> where N can be a value between
    0 and 5)

  * Improved neuron picking precsion

  * Fixed bug that resulted in incorrect cortical thickness 
    calculation

  * Improved thalamic surfaces (better matching to the 
    anatomic MRI data)

  * Fixed a bug where moving/panning/zooming of the camera
    and responding to GUI elements became very slow if the 
    3D data takes considerable time to render

DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

mindbound
LH+A

Član broj: 294004
Poruke: 6
62.85.20.*



Profil

icon Re: SpikeFun - Artificial Nervous System Demo18.06.2012. u 00:01 - pre 79 meseci
Please consider open-sourcing this, it's like a cock tease for a computational neuroscience enthusiast with far too many ongoing programming endeavours to make yet another thing from scratch such as myself. :D

Seriously, from what can be seen it does look like for massive biologically realistic networks your codes are currently the most interesting non-supercomputing level thing out there.
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 15719
*.dip.t-dialin.net.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo24.06.2012. u 16:34 - pre 78 meseci
@mindbound, thx! Like I said I will consider open-sourcing at some point when the code is mature and clean.

Btw, v0.74 is out:

http://www.dimkovic.com/node/7

Code:

v0.74 - Released on June 24th 2012
----------------------------------

  * Fixed fMRI BOLD calculation bugs (fade out during pause)

  * Various OpenGL speedups (reduced state changes, all graphs
    are now drawn using VBOs)

  * Switched to freetype+FreeType-GL for font rendering, 
    ensuring unique text look across graphics cards and 
    operating systems and also improving rendering 
    performance (text rendered directly to vertex buffers)

  * Switched to DejaVu open fonts instead of using Microsoft(R)
    Windows(TM) system fonts ensuring consistent look even
    when SpikeFun is run with Wine on Linux

  * Fixed a bug where contralateral tract was selected in place
    of ipsilateral tract for axon guidance in rare cases


Ova verzija sadrzi razne OpenGL optimizacije, i prelazak na freetype font rendering. Ostalo je jos samo jedno mesto u kodu gde se koristi wglUseFontOutlines() - sinapticke tezine. Kada to zamenim, ceo kod ce biti potpuno nezavistan od Windows font rasterajzera.

Takodje, presao sam na DejaVu fontove, umesto Windows fontova - tako da je to jos jedan korak ka nezavisnosti od Windowsa. Kada budem uklonio poslednji trag Windows font engine-a jedino sto je ostalo sto je Windows-specific je osnovni GUI (glavni prozor i dijalozi).

Evo kako izgleda renderovanje fontova uz pomoc freetype i Freetype-GL biblioteka:



Dodatne prednosti koriscenja freetype engine-a:

- Tekst izgleda isto na svim verzijama Windows-a i na razlicitim grafickim karticama
- Ako se SpikeFun tera pod Wine-om na Linux-u, isto vise nece biti razlika u izgledu teksta
- Bolje performanse zato sto se tekst renderuje uz pomoc vertex-bafera za razliku od displej lista koje koristi wglUseFontOutlines()
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
Prikačeni fajlovi
 
Odgovor na temu

cluemarine

Član broj: 304609
Poruke: 1
*.bb.netvision.net.il.



Profil

icon Re: SpikeFun - Artificial Nervous System Demo28.06.2012. u 18:06 - pre 78 meseci
Ivan, Igor, for simulation of Caenorhabditis elegans neural network, there is an open source simulator called "openworm" here:

http://code.google.com/p/openworm/

 
Odgovor na temu

Srđan Pavlović
Specijalna Edukacija i Rehabilitacija MNRO
Vojvodina, Bačka Palanka

Član broj: 139340
Poruke: 5320
*.static.abakusbp.net.

Sajt: www.oligofrenolog.com


Profil

icon Re: SpikeFun - Artificial Nervous System Demo01.07.2012. u 16:04 - pre 78 meseci
Skinuh danas i pokrenuh ga, ali program "Stops working",
nakon klika na "Restore Defaults" (u Simulation Configuration).

Ne daje neku posebnu poruku samo pukne.

(i 32 i 64 bit verzija)

Komp je Intel C2D E6850 sa 4GB rama, Intel ICH9R chipset, graficka GF GTS 450, 1GB ddr5

nvidia drajveri su 301.42

Ako oces neki debug info, reci gde ga ima :)
 
Odgovor na temu

[es] :: Veštačka inteligencija :: SpikeFun - Artificial Nervous System Demo
(TOP topic, by Gojko Vujovic)
Strane: << < .. 2 3 4 5 6 7 8 9 10 11 ... Dalje > >>

[ Pregleda: 99158 | Odgovora: 401 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.