V čem naprogramovat meteostanici na Raspberry Pi2?

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #15 kdy: 08. 10. 2016, 13:06:00 »
To by ses divil pro co všechno Java existuje. A docela by mně zajímalo, jak souvisí "ojíždění" SD karty s Javou. Předpokládám že čtení tím nemyslíš.

Nedivil, me je to jedno. Java je nenazrane svinstvo a vubec by me nenapadlo neco takoveho shanet pro RPi. Ale mozna, ze tazatel si rad koupi posledni RPi, s vetsi pameti a vice jadry, aby si mohl napsat super mega cool aplikaci v Jave a ta mu neuswapovala SD kartu k smrti, protoze je to mnohem dustojnejsi pro drsneho borce, nez nekolik radku v bashi, jak zmineno jinde. Akorat tedy si nejsem jist, jestli kdyz to ma bezet kazdou minutu, jestli se to v Jave za tu minutu stihne a neprosvihne se termin pro dalsi beh. Zejmena, pokud by to spoustel pokazde znovu cron. To to za tu minutu nejspis ani nenabehne.
Na RPi je normálně OpenJDK, ale na ARM je děsně pomalé. Swap je na SD kartě pochopitelně blbost. Nevím jak jiným, mně se nejvíc na RPi osvědčilo Go - je nativní, nežere paměť, běží stabilně, GPIO je hračka...


JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #16 kdy: 08. 10. 2016, 13:26:51 »
Na RPi je normálně OpenJDK, ale na ARM je děsně pomalé. Swap je na SD kartě pochopitelně blbost. Nevím jak jiným, mně se nejvíc na RPi osvědčilo Go - je nativní, nežere paměť, běží stabilně, GPIO je hračka...

Nektere veci je tezke javamanum vysvetlit.

Mirek

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #17 kdy: 08. 10. 2016, 16:59:55 »
To by ses divil pro co všechno Java existuje. A docela by mně zajímalo, jak souvisí "ojíždění" SD karty s Javou. Předpokládám že čtení tím nemyslíš.

Nedivil, me je to jedno. Java je nenazrane svinstvo a vubec by me nenapadlo neco takoveho shanet pro RPi. Ale mozna, ze tazatel si rad koupi posledni RPi, s vetsi pameti a vice jadry, aby si mohl napsat super mega cool aplikaci v Jave a ta mu neuswapovala SD kartu k smrti, protoze je to mnohem dustojnejsi pro drsneho borce, nez nekolik radku v bashi, jak zmineno jinde. Akorat tedy si nejsem jist, jestli kdyz to ma bezet kazdou minutu, jestli se to v Jave za tu minutu stihne a neprosvihne se termin pro dalsi beh. Zejmena, pokud by to spoustel pokazde znovu cron. To to za tu minutu nejspis ani nenabehne.

1. Java je pro tenhle účel nesmysl, s výjimkou případů kdy by se používal hotový kód

2. Java na Rpi normálně bez problémů funguje, viz např. Minecraft a další

3. Na SD kartu by swap nastavoval snad jen blázen

4. Máš opravdu zkreslené představy o výkonu Java aplikací na non-PC platformách. Když o tom nic reálného nevíš, alespoň nešiř bludy

Mirek

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #18 kdy: 08. 10. 2016, 17:01:47 »
Ano, urcite. Jestli nejaka java pro ARM existuje, tak je nejlepsi pouzit tu. At se to co nejdele spousti a co nejvice se ucpe pamet a ojede SD karta.

To by ses divil pro co všechno Java existuje. A docela by mně zajímalo, jak souvisí "ojíždění" SD karty s Javou. Předpokládám že čtení tím nemyslíš.

Žeby swap? Ona meteostanice v assembleru na jednočipu zabere pár set bajtů, zatímco v Javě na Malině pár set mega!

Koukám další expert na non-PC platformy a Javu. Doporučuji si někdy vyzkoušet jak je to ve skutečnosti a potom psát.

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #19 kdy: 08. 10. 2016, 17:08:49 »
Pre ARM samozrejme existuje priamo http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html, používam ju na Banana-PI už asi 2 roky. Na SD karte je iba holý systém, dokonca aj jar súbor je v /tmp (tmpfs), banana si appku stiahne pri boote a pravidelne aktualizuje zo servera. Mal som obavy pri nasadzovaní, ale java zaberie počas behu 36MB RAM a rýchlosť je vynikajúca, predčila moje očakávania.
Premýšľal som aj nad inými jazykmi, ale nenašiel som nič, čo by vedelo spoľahlivo a bez problémov komunikovať s M$SQL serverom. Teraz už nad zmenou ani neuvažujem..


balki

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #20 kdy: 08. 10. 2016, 17:09:52 »
Na RPi je normálně OpenJDK, ale na ARM je děsně pomalé. Swap je na SD kartě pochopitelně blbost. Nevím jak jiným, mně se nejvíc na RPi osvědčilo Go - je nativní, nežere paměť, běží stabilně, GPIO je hračka...

Nektere veci je tezke javamanum vysvetlit.

Pre rpi je normalne aj oracle jdk skompilovane. Na rpi 1 som si zo srandy pustal spring boot s jetty a bezalo to slusne.  Len vyvoj treba robit inde, tie javove IDE su dost pazrave a normalne textove editory neposkytuju dostatocny komfort. (aj ked pri troche masochizmu sa to da zniest) Java hejt tu nie je na mieste, len smelo do javy na rpi.

tnr

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #21 kdy: 08. 10. 2016, 17:19:06 »
Nektere veci je tezke javamanum vysvetlit.
Nejsem Javaman, ale tvoje prispevky ohledne Javy jsou asi tak stejne informacne uzitecne, jako ty o systemd - v lepsi pripade neznalost, v horsim lzi.
Java SE Embedded se samozrejme na RPI zcela normalne pouziva, drobna rezie tam samozrejme je, ale nijak extremni (opravdu me na stroji s 512/1024 MB RAM netrapi, ze si VM vezme 20MB), rychlost ciste vypocetnich operaci je u Oracle JDK velmi dobre srovnatelna s C++ - mnohem vyssi nez treba u Pythonu, PHP,...

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #22 kdy: 08. 10. 2016, 17:22:30 »
@Mirek: Typicke RPi ma 512 MB pameti a neprilis vykonny procesor. Javu by na to, bez opravdu dobreho duvodu, daval jen debil. Az dosud vse, co jsem kdy videl napsane v Jave, dokazalo zabit i silnejsi stroje, nez RPi. Kdyz nemas nadupany stroj, na Javu zapomen. Mozna, ze na RPi by si vynutila i ten swap i na blbou malou aplikaci.

@balki: Urcite ne na aplikaci tohoto typu. Jaksi nevidim, proc by to melo vyzadovat Javu. To, ze se mozna CPU neodletuje zarem od plosnaku, jako duvod nestaci.

tnr

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #23 kdy: 08. 10. 2016, 17:27:05 »
Pre rpi je normalne aj oracle jdk skompilovane. Na rpi 1 som si zo srandy pustal spring boot s jetty a bezalo to slusne.  Len vyvoj treba robit inde, tie javove IDE su dost pazrave a normalne textove editory neposkytuju dostatocny komfort. (aj ked pri troche masochizmu sa to da zniest) Java hejt tu nie je na mieste, len smelo do javy na rpi.
Jojo, funguje to uplne bez problemu, mam takto udelany doma maly REST server + sber informaci z cidel :-) Vyvoj se samozrjeme na tom moc delat neda, IDE tam opravdu clovek nepusti, ale to myslim ze nikoho nemusi trapit...

balki

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #24 kdy: 08. 10. 2016, 17:31:42 »
@balki: Urcite ne na aplikaci tohoto typu. Jaksi nevidim, proc by to melo vyzadovat Javu. To, ze se mozna CPU neodletuje zarem od plosnaku, jako duvod nestaci.

Python tiez nie je ziadny prebornik v rychlosti a vo vyuziti pamate,  kazdy to tu pritom odporuca. Hejt javy je neopodstatneny, kedze je rychlejsia.

tnr

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #25 kdy: 08. 10. 2016, 17:40:11 »
nejake hard facts pro java hatery:


jdk1.8
real    0m6.838s
user    0m5.260s
sys     0m2.540s

openjdk-7 avian
real 0m11.701s
user 0m9.620s
sys 0m0.550s

gcc 4,6
real 0m6.882s
user 0m5.250s
sys 0m0.390s

gcc 4.6 -O2
real 0m5.360s
user 0m3.790s
sys 0m0.370s

gcc 4.7
real 0m6.884s
user 0m5.140s
sys 0m0.510s

gcc 4.7 -O2
real 0m5.310s
user 0m3.560s
sys 0m0.540s

php
real 1m31.333s
user 1m28.860s
sys 0m0.590s

zdroj: https://www.raspberrypi.org/forums/viewtopic.php?t=25418

Update: Test results after running Tomcat 7 with Java 8 on the Pi
After I got the 512mb version of the Pi (MODELL B), I installed Java 8 and Tomcat 7.0 without any problems. Tomcat examples were working, and I was able to use the Tomcat manager application without any problems.

With 64 MB of RAM used for the graphics card, I still had 291 MB of free memory (with sshd running):

pi@raspberrypi ~/ $ free -m
             total       used       free     shared    buffers     cached
Mem:           438        146        291          0         10         74
-/+ buffers/cache:         60        377
Swap:           99          0         99
zdroj: http://stackoverflow.com/questions/12090745/any-java-experience-on-raspberry-pi
(nez se toho nekdo chytne - pmap nereportuje alokovanou pamet, ale velikost adresniho prostoru, coz je neco uplne jineho)

javaman ((

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #26 kdy: 08. 10. 2016, 18:12:14 »
@Mirek: Typicke RPi ma 512 MB pameti a neprilis vykonny procesor. Javu by na to, bez opravdu dobreho duvodu, daval jen debil. Az dosud vse, co jsem kdy videl napsane v Jave, dokazalo zabit i silnejsi stroje, nez RPi. Kdyz nemas nadupany stroj, na Javu zapomen. Mozna, ze na RPi by si vynutila i ten swap i na blbou malou aplikaci.

@balki: Urcite ne na aplikaci tohoto typu. Jaksi nevidim, proc by to melo vyzadovat Javu. To, ze se mozna CPU neodletuje zarem od plosnaku, jako duvod nestaci.

Jen ty svoje nesmysly ještě vylepši. Nic nevíš, ale Java je zlo. Co teprve Java + Systemd :D

pythonista

Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #27 kdy: 08. 10. 2016, 18:28:05 »
nejake hard facts pro java hatery:

Pro úlohu, která se tu řeší, je asi podstatnější rychlost startu, rychlost knihovních funkcí pro úpravy obrázků a rychlost odezvy wunderground.

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #28 kdy: 08. 10. 2016, 18:49:06 »
Nektere veci je tezke javamanum vysvetlit.
Nejsem Javaman, ale tvoje prispevky ohledne Javy jsou asi tak stejne informacne uzitecne, jako ty o systemd - v lepsi pripade neznalost, v horsim lzi.
Java SE Embedded se samozrejme na RPI zcela normalne pouziva, drobna rezie tam samozrejme je, ale nijak extremni (opravdu me na stroji s 512/1024 MB RAM netrapi, ze si VM vezme 20MB), rychlost ciste vypocetnich operaci je u Oracle JDK velmi dobre srovnatelna s C++ - mnohem vyssi nez treba u Pythonu, PHP,...
Co je "čistě výpočetní operace"? Pamatuju si výpočty nad komplexními čísly, tam Java na ARM (Raspbian) hodně pokulhávala, OpenJDK o dva řády, verze od Oraclu "jen" o jeden.

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:V čem naprogramovat meteostanici na Raspberry Pi2?
« Odpověď #29 kdy: 08. 10. 2016, 18:54:03 »
Co teprve Java + Systemd :D

Jo, to ale mas blby, tuhle skvelou kombinaci na Widlich nemas.