játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5455
FZoli:    4892
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2521

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2189
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1625
syam:    1491
> 1 <
~Cre@tine~> - Tag | 702 hsz       Online status #65034   2007.07.31 06:33 GMT+1 óra  
Idézet
Orphy :
És mindkettő OO nyelv


A Java tiszta OO, de a Delphi az miért is tiszta OO?

   
~Cre@tine~> - Tag | 702 hsz       Online status #65033   2007.07.31 06:32 GMT+1 óra  
Idézet
ferchild :
ja.....de utána az egész nem erről szólt volna.
mint olvasható volt a topic rövid élete során

szóval szerintem igen


Aha, ha a címet nézem, igen.

Még szerintem kimaradt pár dolog:
String-hez hozzáadás string builderrel legalább 100* sebességnövekedést jelent.
A property is jóval lassabb, mint a függvény, bár ezt fogalmam sincs hogy kell lemérni csakúgy tudom.
Aztán a jó öreg for ciklusban is ki lehet paszírozni néhány ezred másodpercet, ha a léptetést átírod prefix-é. Ezt csak C++ ban mértem le, de lehet kipróbálom C# ban is ott mennyit jelent ez.
Foreach is lassabb, mint a for pláne a prefix-es for-nál. Néhány ezredmásodperc, persze ha csak nem milliárdos számokkal dolgozol.

Aztán, hogy az C++ std::vector mennyivel gyorsabb, mint a C# arraylist erre kiíváncsi lennék, bár annyira nagy különbség nem lehet pár 100 elemnél.

Meg amiket leírtál is érdekes. Van még más ami azóta előjött és használod is?

   
Orphy - Törzstag | 1893 hsz       Online status #65029   2007.07.31 06:20 GMT+1 óra  
Szerintem pedig igenis van értelme a dolognak.

Anno a régi időkben unokatesómmal csináltunk is ilyet, a progink egy 100 különböző méretű és színű golyó mozgatása volt külön-külön változó sebességgel és irányba, falról visszapattanva.
A golyók egymással nem léptek kölcsönhatásba.

Én Java nyelven írtam akkor, ő Delphiben, a 2 kód algoritmus ügyében megegyezett.
Az akkori eredmények szerint a Java kb 3x lassabb volt a Delphinél...

És mindkettő OO nyelv

Mielőtt a Java-sok leszedik a fejem, gyorsan hozzáteszem, hogy ez jó 2-3 éve volt, a Java azóta sokat gyorsult.
   
ferchild - Törzstag | 815 hsz       Online status #65028   2007.07.31 06:13 GMT+1 óra  
ja.....de utána az egész nem erről szólt volna.
mint olvasható volt a topic rövid élete során

szóval szerintem igen
Feci Barath (by Kuz)
XD
http://már nem elérhető...új lesz
   
~Cre@tine~> - Tag | 702 hsz       Online status #65022   2007.07.31 05:58 GMT+1 óra  
"no meg indíthatnánk benchmarkot:
probléma megoldása c#, c++, delphi, java, stb... alatt és azok összehasonlítása. "

Lehet, nemtom.

   
ferchild - Törzstag | 815 hsz       Online status #65021   2007.07.31 05:57 GMT+1 óra  
hm.,..............szerintem vmit félreértettél.
Feci Barath (by Kuz)
XD
http://már nem elérhető...új lesz
   
~Cre@tine~> - Tag | 702 hsz       Online status #65011   2007.07.31 04:54 GMT+1 óra  
Régi topic, de érdekes. Igazából szerintem nincs értelme egy full OO nyelv lehetőségeit öszehasonlítani egy nem full OO-éval. (C# vs C++, C# vs Delphi) Teljesen természetes, hogy egy virtuális mező hivogatása nagyságrendekkel lasabb, mint egy normál mező, nem kell ezt méricskélni. Az OO dolgok szépek elegánsak és lassúak így sebességkritikus helyeken érdemes megmaradni a régi vaskalapos megoldásoknál.

   
ferchild - Törzstag | 815 hsz       Online status #16697   2006.06.06 02:16 GMT+1 óra  
nem is igazán arról volt szó, hogy melyik a gyorsabb, hanem hogy mennyivel adott esetben. Legalábbis én erre voltam kíváncsi (csak a set-re, nem a get-re, de még az is lehet, hogy arra is kíváncsi leszek ).
Mivel az indexeres osztályom belül arrayben tárolta az információt így inkább az volt a cél, hogy megnézzem, pusztán azért mert osztályba helyezem és egy nyelvi elemmel élek pluszban, menniyt veszítek/veszíthetek. A list meg azét volt ott, hogy mindenhez képest mekkora sebességáldozattal jár, mert azért ha csak úgy magában felhasználtom ez nem derül ki. Én nagyon szeretem a list-et és a többi generikus tárolót, mert jók és jól használhatóak, de kíváncsi voltam, ha optimalizáció kell éspedig sebességre, melyik verzió az ami a legtöbbet nyújtja az embernek.
Én az indexeres osztályomnál maradok (belül tömb-i reprezentációval), mert számomra az a legmegfelelőbb ebben az esetben. (gondolok itt MDX + C# -os játékfejlesztésre)

ez csak azért volt kéréds, mert tegyük fel ez lett volna az eredmény:
array = 1T < indexer = 1.3T < list<tipus> = 1.4T
akkor egyértelműen a listet választottam volna. Rugalmasság, kezelhetőség, fícsörök, stb........

ennyi
Feci Barath (by Kuz)
XD
http://már nem elérhető...új lesz
   
Gaborious - Tag | 50 hsz       Online status #16658   2006.06.05 13:25 GMT+1 óra  
Persze ez funkciólistájukban meg is látszik....

Persze ha egy adott célra list-et kell használni akkor nincs mese.
DE simán rászokásból ne használjunk mindig a listet mert olykor elég az array is (csak végig kell gondolni hogy miért is).
[Silent Vertigo] { Solarah }
SilentVertigo Honlap
   
ferchild - Törzstag | 815 hsz       Online status #15822   2006.05.31 07:39 GMT+1 óra  
nos.....
csináltam egy kis tesztet az
indexer ami inteket tárol
int[] a = new int[1000000]
list<int> l = new list<int>();
triumvirátusra. Az eredmény ( csak a set-re azaz elem "beletétele" a "tárolóba" :
indexer kb 30%-kal lassabb mint az array
list<int> kb 2.5x lassabb mint indexer.

tehát sorrend:
array = 1 időegység < indexer = 1.33 időegység < list<int> = 2.5 időegység

megjegyzések:
az indexeres osztály tömbben tárolta az értékeket, tehát a sebességtöblet az osztály miatt van
a list<int>-nél pedig nem számít hogy kezdeti kapacitást megadsz e neki vagy sem....a sebességet nem befolyásolta nálam.

enniy...
remélem hasznos lesz mindenkinek ez a kis info

ha vkinek más eredméynek jöttek volna ki vagy esetleg nem ért egyet, hallott vmiről, hogy lehet optimalizálni, gyorsítani ezeken akkor kérem jelezze

üdv!

jah...majd lemaradt: 1 millió int-ről volt szó....
Feci Barath (by Kuz)
XD
http://már nem elérhető...új lesz
   
ferchild - Törzstag | 815 hsz       Online status #12091   2006.05.12 09:02 GMT+1 óra  
nos? semmi?...........
Feci Barath (by Kuz)
XD
http://már nem elérhető...új lesz
   
gymisi - Törzstag | 212 hsz       Online status #11993   2006.05.12 00:54 GMT+1 óra  
Ja, ok, félreértettelek, bocs

   
ferchild - Törzstag | 815 hsz       Online status #11992   2006.05.12 00:45 GMT+1 óra  
asszem egy kicsit félreértettük egymást

én ilyesmikre gondoltam:
struct vs class
array vs list<T>

stb...

tudom ez inkább ált.prog. de még mielőtt leszedné valaki a fejem , hogy ez játékfejlesztős portál, addig megemlítem, hogy jó kód nélkül nincs játék
Feci Barath (by Kuz)
XD
http://már nem elérhető...új lesz
   
gymisi - Törzstag | 212 hsz       Online status #11991   2006.05.12 00:26 GMT+1 óra  
Instancing(), BSP, Octree, Quadtree

   
ferchild - Törzstag | 815 hsz       Online status #11990   2006.05.11 23:58 GMT+1 óra  
Hali All!

Eredetileg nem itt tettem fel a kérdést, hanem a c# topicban, de azt hiszem megér ez a kérdés egy külön kis fejezetet

nos akor lássuk:

ide várom minden kedves felhasználó azon megjegyzéseit akik c#-ot használnak hogy milyen megoldásokat tudnak optimalizáció ügyben. Olyat ami gyorsít ( tehát teljesítményt növel) és olyat ami memóriafelhasználást csökkenti (ez is növel)

no meg indíthatnánk benchmarkot:
probléma megoldása c#, c++, delphi, java, stb... alatt és azok összehasonlítása. Úgy képzelem el, hogy ugyanaz az ember megírja a kis problémáját c#-ban és választott második nyelvben a legjobb tudása szerint majd a progik mérési eredményeit esetleg forrásokkal táblázatosan egy kis szöveggel ide bejegyzi....

thx
Feci Barath (by Kuz)
XD
http://már nem elérhető...új lesz
   
> 1 <
Zárolt téma, újabb hozzászólás nem lehetséges.