Welcome, Guest. Please login or register.


Author Topic: Fraktálok assemblyben (Read 6238 times)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4685
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #60 on: 2018.August.04. 15:57:15 »
mandel16.com: 276.0 másodperc (rosszabb minőségű kép nagy nagyításnál)
mandel24.com: 423.7 másodperc

* mandel.zip (19.65 kB - downloaded 22 times.)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4685
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #61 on: 2018.August.04. 16:24:46 »
Összehasonlítás (bal oldalon látható a 24 bites változat):
21678-0    21680-1

21682-2    21684-3

21686-4    21688-5

21690-6    21692-7

21694-8    21696-9

21698-10    21700-11

21702-12    21704-13

Offline endi

  • EP addict
  • *
  • Posts: 6635
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 67.0.3396.87 Chrome 67.0.3396.87
    • View Profile
    • Honlapom
Re: Fraktálok assemblyben
« Reply #62 on: 2018.August.04. 16:48:20 »
hát, csak úgy látszik ha különbség ha nagyon figyelek és tudom mit kell nézni (bal oldali kevésbé zajos, jobban érezni a formákat)
A diplomás magyar programozó megcsinált egy pacmant egy év alatt, majd lefikázta a világ legjobb játékait. :D

Offline Povi

  • EP addict
  • *
  • Posts: 1651
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 68.0.3440.84 Chrome 68.0.3440.84
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #63 on: 2018.August.04. 16:48:33 »
Összehasonlítás (bal oldalon látható a 24 bites változat):
Jó lett! Annyira nem látszik, hogy vészes lenne a 16 bites se!
Hány bit egész részt használsz végül (24 és 16 bites esetben is kíváncsi vagyok, nem néztem még a zip-et, lehet, hogy benne van a forráskódban a válasz) :-)

Ráadás kérdés: szorzás után, amikor visszashift-eljük jobbra az eredményt, akkor hogy szokás kerekíteni?

Nekem az a logikus, hogy a legutoljára kitolt bitet hozzáadjuk az eredményhez.
*** Speicherplatz zu klein

Offline IstvanV

  • EP addict
  • *
  • Posts: 4685
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #64 on: 2018.August.04. 17:00:55 »
Hány bit egész részt használsz végül (24 és 16 bites esetben is kíváncsi vagyok, nem néztem még a zip-et, lehet, hogy benne van a forráskódban a válasz) :-)

A 16 bitesnél maradt a 13 bites tört rész + 2 bit egész és 1 előjel. A 24 bites vezióban 20 bit a tört rész, az egész pedig szorzás előtt 4 bit + 1 előjel, az eredmény azonban -255.99.. és 255.99.. között lehet. Ennél egyébként lehetne pontosabb is, csak a 4.20 elfogadhatóan működött és nem kellett túlcsordulásra figyelni.

Quote
Nekem az a logikus, hogy a legutoljára kitolt bitet hozzáadjuk az eredményhez.

Ez jó megoldás.

Offline endi

  • EP addict
  • *
  • Posts: 6635
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 67.0.3396.87 Chrome 67.0.3396.87
    • View Profile
    • Honlapom
Re: Fraktálok assemblyben
« Reply #65 on: 2018.August.04. 17:06:20 »
úgy tudom vannak táblázatokkal gyorsított matek rutinok. van sok memóriánk (bár erre talán nem sok), ki kéne próbálni.
úgy tudom a mai procikban is hatalmas táblázatok vannak ilyen célra.
A diplomás magyar programozó megcsinált egy pacmant egy év alatt, majd lefikázta a világ legjobb játékait. :D

Offline IstvanV

  • EP addict
  • *
  • Posts: 4685
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re: Fraktálok assemblyben
« Reply #66 on: 2018.August.04. 17:11:28 »
Táblázatos szorzással próbálkoztam korábban, bár nagy számok szorzásánál nem könnyű jelentős gyorsulást elérni. :oops: Például egyszerű 4x4 vagy 4x8 bites táblázatnál sok időt igényel a részeredmények léptetése és összeadása.

Offline Povi

  • EP addict
  • *
  • Posts: 1651
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 68.0.3440.106 Chrome 68.0.3440.106
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #67 on: 2018.September.07. 22:28:34 »
no, 2.13 bites fix pontos módszerrel (assembly, nem C) most 2:23 a 64 iteráció, holnap viszem az EP klubba.

még egy kicsit szerintem lehetne gyorsítani a szorzó rutin optimalizálásával
*** Speicherplatz zu klein

Offline Povi

  • EP addict
  • *
  • Posts: 1651
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 68.0.3440.106 Chrome 68.0.3440.106
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #68 on: 2018.September.09. 10:35:07 »
75 mp (1:15) 64 iterációval úgy, hogy a négyzetre emelés egy 16384 elemű (32kB-os) táblázatból van, így már nem fut 128kB RAM-mal.
A táblázat generálása 1.7 mp.
*** Speicherplatz zu klein

Offline Povi

  • EP addict
  • *
  • Posts: 1651
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 68.0.3440.106 Chrome 68.0.3440.106
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #69 on: 2018.September.13. 12:09:05 »
« Last Edit: 2018.September.13. 13:59:38 by Povi »
*** Speicherplatz zu klein

Offline szipucsu

  • EP addict
  • *
  • Posts: 7216
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 62.0 Firefox 62.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!

Offline lgb

  • EP addict
  • *
  • Posts: 3491
  • Country: hu
  • æðsta yfirmaður
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 62.0 Firefox 62.0
    • View Profile
    • http://lgb.hu/
Re: Fraktálok assemblyben
« Reply #71 on: 2018.September.13. 21:06:38 »
Tiny Mandel :-)

8 bites fixpontos számokkal (Q2.5)

http://ep.lgb.hu/jsep/demo/?disk=http%3A%2F%2Fpovi.uw.hu%2Fmfx8.com&diskhack=load&autostart=yes&mem=128

Wow, ez az jsep meg mux? ;-P Mar total elfelejtettem h oszinte legyek :-O :-O :-O :-O

Offline Povi

  • EP addict
  • *
  • Posts: 1651
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 68.0.3440.106 Chrome 68.0.3440.106
    • View Profile
    • http://povi.fw.hu
Re: Fraktálok assemblyben
« Reply #72 on: 2018.September.13. 21:47:48 »
Jó gyorsan kirajzolta. :D
1 mp a a mandelbrot kiszámolása a rajzolással együtt
előtte fut még 0.5 sec, amialatt szorzótáblát készít
még lehetne gyorsítani azzal, hogy kihasználjuk, hogy x tengelyre szimmetrikus :-)
de más terveim is vannak, de az meglepetés :-)
Ezt a snapshotot hogyan hoztátok létre?
föl kell tölteni valahová a futtatható fájlt. Aztán a linkben, ami van a hozzászólásban ki kell cserélni a
http%3A%2F%2Fpovi.uw.hu%Fmfx8.com
szöveget a kérdéses linkre :-)
*** Speicherplatz zu klein

Offline szipucsu

  • EP addict
  • *
  • Posts: 7216
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 62.0 Firefox 62.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Fraktálok assemblyben
« Reply #73 on: 2018.September.13. 22:37:42 »
föl kell tölteni valahová a futtatható fájlt. Aztán a linkben, ami van a hozzászólásban ki kell cserélni a
http%3A%2F%2Fpovi.uw.hu%Fmfx8.com
szöveget a kérdéses linkre :-)
Akkor ennyivel a hozzászólásokhoz csatolt fájlok is megnyithatók a webes emuban, ha annak a linkjére cseréljük le a linkben a kérdéses részt, és a egyetlen fájlból áll a program? Mert akkor akár a hozzászólásokhoz is lehetne mindig csatolni a webes emus linket. Vagy akár valahogy megoldani, hogy a fórum generáljon egy ilyen linket az egyfájlos EP-s csatolmányokhoz.

Offline lgb

  • EP addict
  • *
  • Posts: 3491
  • Country: hu
  • æðsta yfirmaður
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 62.0 Firefox 62.0
    • View Profile
    • http://lgb.hu/
Re: Fraktálok assemblyben
« Reply #74 on: 2018.September.13. 23:13:15 »
Akkor ennyivel a hozzászólásokhoz csatolt fájlok is megnyithatók a webes emuban, ha annak a linkjére cseréljük le a linkben a kérdéses részt, és a egyetlen fájlból áll a program? Mert akkor akár a hozzászólásokhoz is lehetne mindig csatolni a webes emus linket. Vagy akár valahogy megoldani, hogy a fórum generáljon egy ilyen linket az egyfájlos EP-s csatolmányokhoz.

Nezd meg az URL-t a kerdojel utan, a fenti peldanal:

disk=http%3A%2F%2Fpovi.uw.hu%2Fmfx8.com&diskhack=load&autostart=yes&mem=128

A disk= parameter egy disk-et definial, _VAGY_ egy specialis modban (amit a diskhack=load mond meg) egy sima futthato EP proggit, amit JSep on-the-fly disk-e konvertal es mint disk eri el aztan, az EP jsep-ben kb nullarol bootol, exdos latja az eloallitott disk-unket, es arrol elindul magatol a program (magatol, ha az autostart=yes is szerepel). A mem=128 nyilvan a RAM meretet definialja.

Tehat, ha van egy EP-s ".com"-od, akkor eleg a fenti reszben a disk= mogotti reszt lecserelni egesz a &diskhack-ig, ami mar marad. Az a sok %3A meg %2A az ugye a : es / escape-elve az url-ben, tehat ez:

http%3A%2F%2Fpovi.uw.hu%2Fmfx8.com

valojaban ez:

http://povi.uw.hu/mfx8.com

Annyi meg a kivanalom, hogy az adott web servernek ahol fenn van a cucc (itt povi.uw.hu) kellhet config, hogy kuldjon egy specialis http header-t a valaszban. Ez azert kell, mert a modern browserek alapbol nem engedik, hogy mas domain-ben levo (itt lgb.hu, mivel ott az jsep) cucc http kerest intezzen egy tok mas domain-be eso webserver fele, ez ugye alapvetoen biztonsagi hiba is lehet. Viszont enlkul az lgb.hu-n futo jsep nem fogja tudni elerni a megadott linken levo cuccot es letolteni maganak a browser memoriajaba, mert egy jol vedett modern browser azonnal rinyalni kezd hogy cross-site scripting attack ... Azzal a configolt plusz http header-rel mondja meg a cel webserver (itt povi.uw.hu pl) hogy felole ok, hogy az lgb.hu hozza akar fordulni, es ez ne legyen attack-nak tekintve a browser altal.

Remelem nem irtam el semmit, stb, mert iszonyat faj a hatam eppen :(