Megoldotta, hogy melyik nyelvet válassza a Fejlesztési és programozási fórum
Navigáció
Kutatási kapcsolatok
Hirdetés
Ubuntu DVD-k, USB-meghajtók és pólók elérhető a Free Sale üzletben

Ha problémái adódnak a kapcsolatban maradással, válassza le a négyzetet, majd csatlakozzon újra ehhez a linkhez
Automatikusan jelentkezzen be a következő látogatásaim során.
- itthon
- "Fórum
- »Fejlesztés és programozás
- " [Megoldva] Melyik nyelvet válassza ?
# 1 2009.04.27-én, 14: 13-kor
[Megoldva] Melyik nyelvet válassza ?
Jelenleg szakmai gyakorlaton vagyok (6 hónapig), és egy kis apróság kódolására késztetnek (el kell felejteni az ékezeteket, nem tudom betenni a német billentyűzetemmel!).
Az alkalmazásomnak egy jó nagy (3-4 GB nagyságrendű) 3D képet kell szegmentálnia, majd statisztikai feldolgozást kell végeznie, és ki kell értékelnie a kép Minkowski-funkcióit. Ezután N mintát kell kivonni a jó nagy képből, és ugyanazt kell átdolgozni, azaz (stat` + Minkowski feldolgozás).
Ezután képesnek kell lennem különféle számítások indítására több processzoron keresztül.
És mi van a nyelvvel? C ++, Fortran vagy Python/Fortran ?
Az igazat megvallva van olyan számom, mint a C ++ és a Fortran, gyorsabban megy, vagy az ITK-t használom (ami korántsem kötelezõ, mivel fekete-fehéren "egyszerû" küszöböt szeretnék elérni). Félek a pythonikus memóriakezeléstől is (mintha félnék, ha a memóriában 1235x-es 3 GB-os fájlom lenne! Még akkor is, ha a gép 16 GB RAM-mal rendelkezik, gyorsan megsérülhet)
Köszönöm, hogy kedvesen megvilágítottad ilyen sötét lámpámat (ebben a témában nem vagyok informatikus!)
Utoljára szerkesztette Swaraj (2009. 05. 12., 10:58)
# 2 2009.04.27-én 14: 20-kor
Re: [Megoldva] Melyik nyelvet válassza ?
Általában, amikor képfeldolgozást végzünk, akkor inkább a C-t használjuk.
Az objektum programozása sok memóriát igényel az imperatív programozáshoz képest .
Az objektum minden példánya átírja a módszereket a memóriába, egy funkció egyetlen egyszeri írása ellenében
Általában a képeken hajlamosak vagyunk eléggé csökkenteni a feldolgozott adatok méretét, a gyakran alkalmazott megoldás az, hogy pixelenként 256 színre váltunk, és ezért ezeket inkább egy char-ra, mint egy int-re kódoljuk. Végül sok memóriát spórol meg.
[szerkesztés] Mea Culpa, tetszik a nagyon helyesen rámutatott térbeli manó, elengedhetetlenül és nem funkcionálisan kell olvasni. Szégyellem és zavart vagyok ez a kifejezéscsere [/ szerkesztés]
Utoljára szerkesztette tar_NeFyS (2009. április 28., 00:23)
# 3 2009.04.27., 14: 41-kor
Re: [Megoldva] Melyik nyelvet válassza ?
Ha jól értem, akkor a C-ben először a memóriába hívom a képemet, majd olyan funkciókkal hajtom végre a feldolgozást, amelyek paraméterekre mutatnak a képre?
És megtehetem az mm dolgot a FORTRAN-ban vagy a Python + FORTRAN-ban (amiben rosszul érzem magam) ?
a gyakran használt megoldás az, hogy pixelenként 256 színre vált, és ezért ezeket inkább egy char-ra, mint egy int-re kódoljuk
Valamit változtat a végrehajtás sebességén ?
# 4 2009.04.27., 15:19
Re: [Megoldva] Melyik nyelvet válassza ?
Az objektum minden példánya átírja a memóriában lévő módszereket, a függvény egyetlen egyszeri írása ellen
Ez valóban nagyon gyorsan elmondható, szeretném tudni, mire alapozod ezt mondani. Amúgy sem egy jó fordítón. Nem azért, mert a kódolási szinten a metódusok és a mezők be vannak zárva, ezért a kód megismétlődik a fordítás során.
Másodszor, a C nem funkcionális nyelv. Támogatja a strukturált imperatív programozást, nem a funkcionális programozást. A LISP, az OCaml és a Haskell példák a funkcionális programozást támogató nyelvekre.
És mi van a nyelvvel? C ++, Fortran vagy Python/Fortran ?
Nyilvánvaló, hogy teljesítményproblémái lesznek, ezért kerülje az értelmezett nyelvet: a magam részéről nem tanácsolom a Python használatát. A Fortran, a C vagy a C ++ alkalmas lehet: ezt C ++ nyelven tenném, de mindenekelőtt azt a nyelvet használom, amelyet legjobban tudsz.
Az űr manó
Utolsó szerkesztés: Le Farfadet Spatial (2009. április 27., 15:20)
# 5 2009.04.27-én 15: 52-kor
Re: [Megoldva] Melyik nyelvet válassza ?
Amúgy sem egy jó fordítón. Nem azért, mert a kódolási szinten a metódusok és a mezők be vannak zárva, ezért a kód megismétlődik a fordítás során.
Mondanál egy példát egy jó fordítóra a C ++ és/vagy a Fortran számára? Egyébként csak arra az esetre, betölthetem-e a képet a főprogramba, és használhatok-e a képre mutató objektumattribútumokat ?
És még egy utolsó tipp: használhatom az ITK-t (C ++ sablonok könyvtárát) a FORTRAN kóddal ?
Bevallom, hirtelen haboztam a C ++ és a Fortran között !
# 6 2009.04.27-én, 20: 26-kor
Re: [Megoldva] Melyik nyelvet válassza ?
Valójában a többprocesszoros gép architektúrájától és a memóriakezeléstől függ: a processzorok között megosztott memória vagy sem.
a többprocesszoros gépeken használt nyelvek gyakran MP-vel/PVM-mel vagy FORTRAN-könyvtárakkal és néha ada.
"- Egy ülő értelmiségi kevésbé megy, mint egy járó bunkó."
Maurice Biraud - Taxi a Tobruk számára
Michel Audiard
# 7 2009.04.27-én, 22: 14-kor
Re: [Megoldva] Melyik nyelvet válassza ?
Mondhat egy példát egy jó fordítóra a C ++ és/vagy a Fortran számára ?
A Gcc nagyszerű a C ++ számára (a G ++ -on keresztül használható). A Fortran esetében azt tapasztaltam, hogy a G95 akkoriban elég jól sikerült. Ennek ellenére a Fortran esetében azt kell mondanom, hogy hajlamos vagyok a gépgyártó által biztosított fordítót használni. Az IBM architektúráján nagyon értékeltem az Xlf-t. Az Intel architektúráján az Ifort nagyon ajánlott.
a többprocesszoros gépeken használt nyelvek gyakran MP-vel/PVM-mel vagy FORTRAN-könyvtárakkal és néha ada.
Ez az én tapasztalatom is. Ugyanakkor megtehet olyan dolgokat, amelyek jól teljesítenek a C ++ nyelven. Az egyetlen dolog, hogy a C ++ - nak sokkal tovább kell tanulnia.
Egyébként csak arra az esetre, betölthetem-e a képet a főprogramba, és használhatok-e a képre mutató objektumattribútumokat ?