Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 10 odgovora
  • 3.106 pregleda

Najnovija ↓

Vreme za aarch64 25.02.2021. u 11:31 · pre 69 meseci #1
32 int registra, 32 float registra, nije lose.
Malo mi neobicni mnemonici, ali navici cu se.
ARM se bas rasprostranio, a ovo sa Apple me potaklo da se pozabavim
ucenjem ozbiljnije. Tu su programi koje imam, obicno pocinjem
sa pretabavanjem, da bih uocio razlike.
Re: Vreme za aarch64 02.03.2021. u 08:35 · pre 68 meseci #2
Pod 'programi koje imas' mislis na svoje C programe, i kako ih kompajler (koji pretpostavljam ide uz taj procesor/arhitekturu) pretabava u asembler za ARM?

Ili si mislio nesto drugo, bas ucenje asemblera?
(uzgred, blago tebi - imas novu igracku ;) )
Re: Vreme za aarch64 06.03.2021. u 00:59 · pre 68 meseci #3
Rajko:"Ili si mislio nesto drugo, bas ucenje asemblera?"

Da, bas ucenje asemblera. C programi rade out of box, ali asembler treba pretabavati.
Ne znam nekako volem da savladam neki proc za koji mislim da je aktuelan.

"(uzgred, blago tebi - imas novu igracku ) "

Pa svi imaju. Telefon ti je aarch64 ako je par godina star. Ne mora se rutovati
ima adb komanda sa kojom mozes slati kod na telefon i isprobavati. To se enabluje
u onoj opciji developer tools.
Re: Vreme za aarch64 15.03.2021. u 14:15 · pre 68 meseci #4
Oke, volis asembler.

Pomislio sam isprve na C, jer sam imao druga koji je bio zaludjeni poznavalac x86 asemblera.
Hobi mu je bio uporedjivanje kompajlera, to jest nacina kako prevode kod iz viseg jezika (i ne samo C-a).

(a pod igranjem sam mislio na 'ubijanje mozdanih celija')
Re: Vreme za aarch64 17.03.2021. u 03:10 · pre 68 meseci #5
Za C nije problem samo kompajliras, ali tad ne poznajes arhitekturu. Meni je kad ucim neki proc
samo asembler vazan, jer tako jedino mogu razumeti kvirkove i specificnosti pa i gledati da nekako
bolje pisem za dati procesor. Mene konkretno ovde interesuje ovaj Neon jer to svi ovi procesori imaju
a kad se docepam nekog sa SV ekstenzijama tim bolje :P
U principu asembler ti danas treba zbog tih vektorskih instrukcija, inace poprilicno je isto raditi
sa generickim instrukcijama. Mada, C kompajleri su sve bolji i u tome, tako da jedino sto mozes
da dobijes je u velicini koda.

Re: Vreme za aarch64 24.03.2021. u 03:57 · pre 68 meseci #6
Steta sto Neon nema min/maxps za float brojeve ne mogu da implementiram SIMD optimizovani bitonic sort. (u stvari mogu ali samo za intove)
Imam neke programe koje sam radio 2013, to je jedno pola ovih benchmarka za jezike na alioth, nekad se
zvalo shootout, ali tu asembler koji sam uradio kida sve jezike. U svakom slucaju nemam nista od ARM-a
sto moze da pridje x86 performansama, ali ono cisto radi ucenja bih mogao.
Re: Vreme za aarch64 30.03.2021. u 17:23 · pre 68 meseci #7
Kad vec pomenu ucenje, pogledao sam sta je to bitonic sort (nikad cuo dosad).

Onda sam implementirao bitonic algoritam 'non-recursive' varijantu (nasao na wikipedia-i) u prastari Delphi demo ThreadSort, da bih video vizuelno kako to radi i izgleda.
Nemalo sam se iznenadio kad sam video sta se na kraju dobije - bitonic sequence: vrednosti se redom penju do nekog maximuma, zatim se spustaju do nekog minimuma.
Za razliku od sorted sequence, gde su sve vrednosti non-increasing or non-decreasing, cine monotoni niz.
Posto sam ugradio mogucnost usporenja crtanja, tacno sam video kako/sta sort zapravo radi.

Kapiram da bitonic sort ima neku specijalnu primenu, procitah da spada u takozvane 'gradjevinske' algoritme.

Zasto ti je bilo vazno da ovo pravis u asembleru, ima li to neku specijalnu primenu u operativnim sitemima, ili mozda s hardverom?
Re: Vreme za aarch64 30.03.2021. u 18:07 · pre 68 meseci #8
Rajko:"Zasto ti je bilo vazno da ovo pravis u asembleru, ima li to neku specijalnu primenu u operativnim sitemima, ili mozda s hardverom? "

Pa zato sto je u asembleru jedno 3 puta brzi nego bilo sta kompajlirano. Specijalan kod koji kompajler ne moze da generise.
Re: Vreme za aarch64 27.06.2021. u 13:43 · pre 65 meseci #11
Heh kad sam uradio ovo:
Code:


.L1main:
    cmp x20,20
    blt lo
    advance A
    advance B
    advance C
    advance D
    advance E
    advance F
    advance G
    advance H
    advance I
    advance J
    advance 01
    advance 02
    advance 03
    advance 04
    advance 05
    advance 06
    advance 07
    advance 08
    advance 09
    advance 10
    subs x20,x20,20
    bgt .L1main
    b Lskip
lo:
    advance K
    subs x20,x20,1
    bgt lo
Lskip:

Odmah sam dobio jedno 10% na performansama :P
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme