[ Príspevkov: 7 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Optimalizacia kodu

Registrovaný: 31.05.09
Prihlásený: 02.06.17
Príspevky: 562
Témy: 37 | 37
Bydlisko: BegyBen
NapísalOffline : 30.06.2009 0:50 | Optimalizacia kodu

Zdravim,
Chcel by som si spravit take micro-testy mojich skriptov pre zistenie rychlosti. Predstavujem si to tak, ze by som si vytiahol urcity algoritmus z mojej aplikacie a otestoval by som ho ako dlho riesi urcitu ulohu, potom by som skusil napr. zmenit urcite funkcie, vyladit a zmeral by som cas znova. Tieto daje by som si napr. previdol na percenta a ukazalo by mi napr. 2. variant je o 28% rychlejsi.
Zda sa mi, ze ked som sa ucil C tak tam nieco take to bolo ako start -> stop a mohol si ukazat cas, ale uz si presne nepametam.
Neviem ci nieco podobne mozem urobit aj v PHP.
Dakujem za tipy.
Hodilo bysa mi to hlavne pre situacie kdemate na vyber viacero funckii alebo viacero ciet riesania a nedokazete urcit, ktora je rychlejsia.


_________________
"Ženy jsou jako domény. Ty nejlepší jsou zabrané, ale pořád můžete získat nějaké z exotických zemí."
Offline

Skúsený užívateľ
Skúsený užívateľ
Optimalizacia kodu

Registrovaný: 09.07.08
Prihlásený: 17.01.15
Príspevky: 1586
Témy: 96 | 96
NapísalOffline : 30.06.2009 8:18 | Optimalizacia kodu

Kód:
$start = microtime(1);

{kod kod kod kod}

$end = microtime(1);
echo $end-$start;


Kód:
$pocet_opakovani=100000;
$start = microtime(1);

for($i=0;$i<$pocet_opakovani;$i++){
  {kod kod kod kod}
}

$end = microtime(1);
echo $end-$start;

Jednotlivé testy rob viackrát, niektorý kód keď spustíš prvýkrát, trvá dlhšie ako podruhé alebo potretie. Pozor, aby si nerobil test 100 000 krát s kódom, ktorého trvanie bude 1s každé opakovanie :) síce ti to po 30 sekundách skape, ale nie je to nič moc


Offline

Užívateľ
Užívateľ
Optimalizacia kodu

Registrovaný: 26.12.06
Prihlásený: 30.10.17
Príspevky: 4009
Témy: 181 | 181
Bydlisko: Nitra / Bra...
Vek: 24
NapísalOffline : 30.06.2009 10:32 | Optimalizacia kodu

prečo poprvý krát trvá spracovanie dlhšie ako druhý, tretí... ?
a je tam velky rozdiel.. prvy pokus = 0.3, druhy pokus = 0.009


_________________
Sorry za prelkepy
Offline

Skúsený užívateľ
Skúsený užívateľ
Optimalizacia kodu

Registrovaný: 09.07.08
Prihlásený: 17.01.15
Príspevky: 1586
Témy: 96 | 96
NapísalOffline : 30.06.2009 10:42 | Optimalizacia kodu

pretože prvýkrát to musí ešte skompilovať, nadruhýkrát to máš už nacacheované


Offline

Užívateľ
Užívateľ
Optimalizacia kodu

Registrovaný: 31.05.09
Prihlásený: 02.06.17
Príspevky: 562
Témy: 37 | 37
Bydlisko: BegyBen
Napísal autor témyOffline : 30.06.2009 12:11 | Optimalizacia kodu

Diki , skusim si to


_________________
"Ženy jsou jako domény. Ty nejlepší jsou zabrané, ale pořád můžete získat nějaké z exotických zemí."
Offline

Užívateľ
Užívateľ
Optimalizacia kodu

Registrovaný: 31.05.09
Prihlásený: 02.06.17
Príspevky: 562
Témy: 37 | 37
Bydlisko: BegyBen
Napísal autor témyOffline : 30.06.2009 13:14 | Optimalizacia kodu

No musim povedat, ze skutocne tento sposob :
Kód:
$pocet_opakovani=100000;
$start = microtime(1);

for($i=0;$i<$pocet_opakovani;$i++){
  {kod kod kod kod}
}

$end = microtime(1);
echo $end-$start;

je velmi malo presny a vysli mi vysledky presne IBA na jedno desatinne miesto, co si myslim, ze pre seriozne testy je smiesne.
No stala sa zaujimava vec, ked som hore uvedeny skript zacyklil este do $pocet_testov :
Kód:
<?php
$pocet_opakovani=100000;
$pocet_testov = 500;
$sucet = 0;
 
for($ii=0;$ii<$pocet_testov;$ii++){
$start = microtime(1);
for($i=0;$i<$pocet_opakovani;$i++){
  {KOD KOD KOD}
}

$end = microtime(1);
$cas = $end-$start;
$sucet +=  $cas;
}
echo "Vysledok".$sucet / $pocet_testov;
?>

Co znamena , ze spravim priemer z 500 testov.
Tento skript (alebo supertest 500 testov) som spravil 5x a u vsetkych vysledkoch mi vysla hodnota presna na 3 desatinne miesta(!) , co hodnotim za velmi pozitivny jav.

// este dodam, ze podla mna ak by clovek robil 10 000 - 100 000 testov vysledky by mohli byt presne mozno az na 5-6 desatinnych miest!Ale je to casovo trosku narocnejsie :lol:


_________________
"Ženy jsou jako domény. Ty nejlepší jsou zabrané, ale pořád můžete získat nějaké z exotických zemí."
Offline

Skúsený užívateľ
Skúsený užívateľ
Optimalizacia kodu

Registrovaný: 09.07.08
Prihlásený: 17.01.15
Príspevky: 1586
Témy: 96 | 96
NapísalOffline : 30.06.2009 13:39 | Optimalizacia kodu

Ono nie je presné ako presné.
Predpokladám, že pracuješ na normálnom desktope. Tam ti vyjdú iné výsledky ako na slabšom netbooku. A úplne iné výsledky ti vyjdú na serveri, úplne iné ti vyjdú na serveri v plnej prevádzke ako v noci keď je kľud... Výsledky ovplyvňujú dokonca aj také faktory ako či hýbeš myšou (skús si to).
Tebe ide iba o to, ktorá alternatíva je najrýchlejšia. A na tento účel môj spôsob plne postačuje. Ak ti pri jednom meraní jeden spôsob urobí 0,3 aj 0,5s a druhý 0,7 a 0,8, tak vieš, že ten druhý je pomalší. Presne to nikdy nebudeš vedieť.


 [ Príspevkov: 7 ] 


Optimalizacia kodu



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizácia

v HTML, XHTML, XML, CSS

11

587

15.09.2008 23:49

cuMphort

V tomto fóre nie sú ďalšie neprečítané témy.

OPTIMALIZACIA

v Ostatné programy

2

232

04.09.2010 9:09

petos

V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizácia

v Ponuka práce

1

1076

22.02.2009 23:13

Flety

V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizacia SSD

v SSD disky

29

724

01.02.2014 22:37

matus699

V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizácia firefox

v Sieťové a internetové programy

12

192

07.10.2014 23:35

ac.milan

V tomto fóre nie sú ďalšie neprečítané témy.

Seo optimalizácia

v Internetový marketing, SEO, reklama

1

155

15.01.2017 11:01

BX

V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizacia SSD

v SSD disky

8

414

22.01.2014 15:02

Casseus

V tomto fóre nie sú ďalšie neprečítané témy.

optimalizacia rozmerov

v Webdesign

1

456

30.09.2007 13:15

Flety

V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizacia obrazkov

v Webdesign

4

189

06.09.2014 13:01

don jebot

V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizacia RAM/PC

v Biosy a ladenie výkonu

19

381

28.06.2015 22:59

michalesku

V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizácia na IE

v HTML, XHTML, XML, CSS

5

485

26.10.2010 15:15

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

optimalizacia pre explorer

v HTML, XHTML, XML, CSS

7

462

25.01.2011 18:11

shaggy

V tomto fóre nie sú ďalšie neprečítané témy.

Optimalizácia výkonu SSD

v Články

20

5809

20.01.2013 0:17

Luks

V tomto fóre nie sú ďalšie neprečítané témy.

Multi-core optimalizacia

v Intel - Integrated Electronics

7

707

06.05.2009 21:18

Mir

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

SEO - Optimalizácia pre vyhľadávače

v Internetový marketing, SEO, reklama

0

4572

03.06.2006 17:15

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Google Robot - klamlivá optimalizácia

v Internetový marketing, SEO, reklama

3

244

05.07.2012 22:52

shaggy



© 2005 - 2017 PCforum, edited by JanoF