CPU-ji in compilerji

programski jeziki in programiranje

Moderator: tilz0R

CPU-ji in compilerji

OdgovorNapisal/-a s54mtb » 23 Apr 2022, 10:21

VolkD je napisal/-a:Ko se boš naveličal C, lahko preklopiš na C++ ali pa celo na Pyton.


Če ti koda dela prehitro, ali porabi premalo spomina, tudi.
Always going the extra mile.
https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 14369
Pridružen: 15 Jan 2015, 00:10
Zahvalil se je: 2138 krat
Prejel zahvalo: 5974 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a Proteus » 23 Apr 2022, 14:48

s54mtb je napisal/-a:Če ti koda dela prehitro, ali porabi premalo spomina, tudi.

CPU-ji so tako napredovali, da tole v večini primerov sploh ni več nikakršen problem.
Svetloba moti tiste, ki živijo v temi.
Uporabniški avatar
Proteus
 
Prispevkov: 3300
Pridružen: 18 Jan 2015, 00:31
Kraj: Planet Zemlja
Zahvalil se je: 358 krat
Prejel zahvalo: 736 krat
Uporabnika povabil: s54mtb
Število neizkoriščenih povabil: 136

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a GJ » 23 Apr 2022, 15:16

Proteus je napisal/-a:
s54mtb je napisal/-a:Če ti koda dela prehitro, ali porabi premalo spomina, tudi.

CPU-ji so tako napredovali, da tole v večini primerov sploh ni več nikakršen problem.

So problemi, ampak moraš biti vsaj malo programerja, da to razumeš in sodiš!

LP GJ
Če si jezen, si žrtev!
GJ
 
Prispevkov: 416
Pridružen: 18 Jan 2015, 22:26
Kraj: Ljubljana
Zahvalil se je: 205 krat
Prejel zahvalo: 131 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 28

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a zanka » 23 Apr 2022, 15:18

Iz dolgočasja sem že na Fortranu ...
Uporabniški avatar
zanka
 
Prispevkov: 3414
Pridružen: 17 Mar 2016, 00:16
Kraj: SI-8000
Zahvalil se je: 127 krat
Prejel zahvalo: 420 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 83

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a VolkD » 23 Apr 2022, 18:38

Proteus je napisal/-a:
s54mtb je napisal/-a:Če ti koda dela prehitro, ali porabi premalo spomina, tudi.

CPU-ji so tako napredovali, da tole v večini primerov sploh ni več nikakršen problem.
Ne samo CPU-ji ampak tudi prevajalniki.
Če sem 15 let nazaj v assemblerju še naredil manjšo in hitrejšo kodo od enake v C-ju, je danes situacija povsem obratna. Praviloma C prevajalnik naredi kodo ki je bolj učinkovita tako glede na porabljen flash, kot glede na porabljen RAM. Tudi hitrost izvajanja je boljša.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 57247
Pridružen: 29 Dec 2014, 19:49
Kraj: Kačiče (Divača)
Zahvalil se je: 15506 krat
Prejel zahvalo: 9017 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a gumby » 23 Apr 2022, 19:09

Eno je učinkovitost prevajalnika, drugo pa nameren bloatware... in potem imaš gonilnik za miško velikosti >200MB
my brain hurts
Uporabniški avatar
gumby
 
Prispevkov: 2841
Pridružen: 14 Jan 2015, 18:49
Kraj: Lendava
Zahvalil se je: 121 krat
Prejel zahvalo: 776 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 79

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a s54mtb » 23 Apr 2022, 19:27

Gre za osnovno razumevanje stvari. Python koda se ne prevaja, ampak za izvajanje podobno kot v času BASICa za to skrbi interpreter. Ta je tako univerzalen, da se osnovna koda izvaja kjerkoli. Seveda brez popolne "objektizacije" to nebi bilo možno. C++ je še vedno objektno zasnovan z vsemi prednosti, ki jih ta prinaša, a obenem omogoča z vse bolj učinkovitimi prevajalniki tudi veliko optimizacijo v CPU ciklih in spominu. C je še stopnico nižje, ne dela smetarskih poslov kot C++ itd... Res so mikrokontrolerji napredovali in MB flasha/rama ni nič posebnega... Vse bolj se tudi briše meja med zahtevami/zahtevnostjo c++ in c. Popularnost kače gre pa gotovo pripisati dejstvu, da prežveči praktično vse, kar mu vržeš med zobovje... Ampak to je tudi dvorezni meč in ima svojo ceno, predvsem v tem, da je za premetavanje objektov potrebnih enostavno več ciklov kot intrinsičnih....

Lahko se pa tudi motim :)
Always going the extra mile.
https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 14369
Pridružen: 15 Jan 2015, 00:10
Zahvalil se je: 2138 krat
Prejel zahvalo: 5974 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a Proteus » 23 Apr 2022, 22:24

Imam občutek, da vsak gleda svoj vrtiček in potem misli, da se svet vrti okrog njega.

Pred leti smo poslušali predavanje o NBP, kjer je avtor vse, ki uporabljajo kaj drugega kot ASM imenoval za "pussyje", ki s C-jem prižigajo lučke.

Potem so "pu..." ugotovili, da so CPU-ji tako napredovali, da zdaj bi pa to že lahko nardili NBP na človeški način...

Python pač uporablja interpreter, ki ga moraš najprej naložiti na CPU. S tem je lahko vse narobe ali pa nič. Odvisno kaj sploh je tvoj cilj. Če hočeš zabit žebelj vzameš kladivo, če hočeš priviti vijak pa izvijač. Izbor orodja je torej odvisen od namena.

Lepota kače je, da ne potrebuješ nobenega prevajalnika, vse te lepo čaka na CPU-ju. Na njemu imaš z lahkoto celo več verzij programov, zaženeš pa tisto, ki jo trenutno potrebuješ itd...

Verjetno boš dvakrat razmislil, če boš poizkušal s kačo krmiliti kakšne časovno kritične sisteme, kjer CPU že krepko švica, po drugi strani pa je kača odlična za analizo podatkov in še marsikaj.
Svetloba moti tiste, ki živijo v temi.
Uporabniški avatar
Proteus
 
Prispevkov: 3300
Pridružen: 18 Jan 2015, 00:31
Kraj: Planet Zemlja
Zahvalil se je: 358 krat
Prejel zahvalo: 736 krat
Uporabnika povabil: s54mtb
Število neizkoriščenih povabil: 136

Re: CPU-ji in compilerji

OdgovorNapisal/-a zanka » 24 Apr 2022, 09:22

Meni kača ni nikoli dovolj hitro delala ...
Uporabniški avatar
zanka
 
Prispevkov: 3414
Pridružen: 17 Mar 2016, 00:16
Kraj: SI-8000
Zahvalil se je: 127 krat
Prejel zahvalo: 420 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 83

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a s54mtb » 24 Apr 2022, 10:18

Proteus je napisal/-a:Imam občutek, da vsak gleda svoj vrtiček in potem misli, da se svet vrti okrog njega.

Pred leti smo poslušali predavanje o NBP, kjer je avtor vse, ki uporabljajo kaj drugega kot ASM imenoval za "pussyje", ki s C-jem prižigajo lučke.

Potem so "pu..." ugotovili, da so CPU-ji tako napredovali, da zdaj bi pa to že lahko nardili NBP na človeški način...

Python pač uporablja interpreter, ki ga moraš najprej naložiti na CPU. S tem je lahko vse narobe ali pa nič. Odvisno kaj sploh je tvoj cilj. Če hočeš zabit žebelj vzameš kladivo, če hočeš priviti vijak pa izvijač. Izbor orodja je torej odvisen od namena.

Lepota kače je, da ne potrebuješ nobenega prevajalnika, vse te lepo čaka na CPU-ju. Na njemu imaš z lahkoto celo več verzij programov, zaženeš pa tisto, ki jo trenutno potrebuješ itd...

Verjetno boš dvakrat razmislil, če boš poizkušal s kačo krmiliti kakšne časovno kritične sisteme, kjer CPU že krepko švica, po drugi strani pa je kača odlična za analizo podatkov in še marsikaj.



Saj to sem tudi jaz želel povedat. Kakega ML ali CV se verjetno nikoli nebi lotil v C/C++, ker ima kačon enostavne in učinkovite rešitve in z mrcvarjenjem v c-ju verjetno nebi nič pridobil... Velja seveda tudi obratno.

Ne boš verjel, ampak goreči zagovornik asemblerja in pregovorni pljuvalec "C-rash" compilerjev je vse to preskočil in direktno prijel kačo za vrat: http://antena.fe.uni-lj.si/literatura/S53MV/aam/aam.pdf :_dunno :_CR
Always going the extra mile.
https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 14369
Pridružen: 15 Jan 2015, 00:10
Zahvalil se je: 2138 krat
Prejel zahvalo: 5974 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: ESP32 c compiler in IDE

OdgovorNapisal/-a forest70 » 24 Apr 2022, 11:00

s54mtb je napisal/-a:Ne boš verjel, ampak goreči zagovornik asemblerja in pregovorni pljuvalec "C-rash" compilerjev je vse to preskočil in direktno prijel kačo za vrat: http://antena.fe.uni-lj.si/literatura/S53MV/aam/aam.pdf :_dunno :_CR

Kapo dol za znanje! Daj ti, če zmoreš! Ja vem ASM je jeba, c++ je kompromis s katerim včasih ne dosežeš cilja.
If you pay in bananas, you got monkeys.
Uporabniški avatar
forest70
 
Prispevkov: 2692
Pridružen: 14 Jan 2015, 00:11
Kraj: Koper
Zahvalil se je: 482 krat
Prejel zahvalo: 610 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 132

Re: CPU-ji in compilerji

OdgovorNapisal/-a alividmar » 24 Apr 2022, 13:20

http://antena.fe.uni-lj.si/literatura/S ... m/aam.html

Na koncu dokumenta so povezave, ki pa v pdf dokumentu niso prave.
Na zgornjem linku so povezave prave.
Uporabniški avatar
alividmar
 
Prispevkov: 1009
Pridružen: 18 Jan 2015, 07:43
Kraj: Postojna
Zahvalil se je: 155 krat
Prejel zahvalo: 324 krat
Uporabnika povabil: s54mtb
Število neizkoriščenih povabil: 34

Re: CPU-ji in compilerji

OdgovorNapisal/-a tilz0R » 24 Apr 2022, 17:26

MIslim, da vas pol ne ve kaj govori v tej temi.

C++ se danes prevede v praktično enako velikost/speed kot C. Razlika je mogoče 1-2% v prid C-ja.
Seveda govorimo o MCU CPU-ju, kjer se ne uporablja memory management enote ali throw ukazov, for instance.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 2119
Pridružen: 17 Jan 2015, 23:12
Kraj: Črnomelj
Zahvalil se je: 241 krat
Prejel zahvalo: 654 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 210

Re: CPU-ji in compilerji

OdgovorNapisal/-a s54mtb » 24 Apr 2022, 18:26

Jaz govorim predvsem o primerjavi c/c++ proti kačonu. Saj nekaj je tudi na mikrokontrolerjih (micropython & co.)... Res pa nisem neka referenca. Imam samo kakih 20 let izkušenj v embedded aplikacijah, tako da jemljite moje zapise z rezervo.
Always going the extra mile.
https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 14369
Pridružen: 15 Jan 2015, 00:10
Zahvalil se je: 2138 krat
Prejel zahvalo: 5974 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255


Vrni se na Software

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost

cron