Nubosabuk Opublikowano 21 Lipca 2011 Udostępnij Opublikowano 21 Lipca 2011 co jest szybsze: dzielenie za pomocą "/", czy "div"? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
karolo320 Opublikowano 21 Lipca 2011 Udostępnij Opublikowano 21 Lipca 2011 Nie jestem pewny, ale obstawiam "/", bo div wyciąga jeszcze całości. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 21 Lipca 2011 Udostępnij Opublikowano 21 Lipca 2011 Raczej div, ale chyba to niema dużej różnicy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dawidds Opublikowano 21 Lipca 2011 Udostępnij Opublikowano 21 Lipca 2011 A po co Ci ta wiadomość : D ? Jak chcesz wynik zmiennoprzecinkowy to używaj "/", jak całkowity to "div". a div b = floor(a / b ) Jeśli już coś miało by być szybsze to div, ale nawet jeśli jest różnica to na tyle malutka że nie ma co tego liczyć. A na pewno nie w gmie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 21 Lipca 2011 Administratorzy Udostępnij Opublikowano 21 Lipca 2011 A to nie można zmierzyć ? Zrób pętlę która się wykona 100000 razy i zmierz czas. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Nubosabuk Opublikowano 21 Lipca 2011 Autor Udostępnij Opublikowano 21 Lipca 2011 A to nie można zmierzyć ? Zrób pętlę która się wykona 100000 razy i zmierz czas. no właśnie tak w końcu zrobiłem, w każdym razie z "/" liczyło mi się jakieś 52s a z "div" około 51, więc div jest nieznacznie szybszy (pewnie o jakąś nanosekundę:) ) a ta wiadomość potrzebna mi, bo staram się trochę przyspieszyć wykonywanie mojego kodu i szukam co by tu odjąć :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
candy Opublikowano 22 Lipca 2011 Udostępnij Opublikowano 22 Lipca 2011 Dokładniej rzecz biorąc jedna nanosekunda to 10 do minus dziewiątej potęgi sekundy (0,000000001). Jeżeli robiłeś 100000 powtórzeń to dzieląc przez / operacja wykonywała się średnio co 0,00052 sekundy a przez div średnio co 0,00051 sekundy. Różnica to 0,00001 sekundy (różnica nawet nie wynosiła jedną mikrosekundy), tylko 10 mikrosekund, czyli 10000 razy więcej niż nanosekunda. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rudy Opublikowano 22 Lipca 2011 Udostępnij Opublikowano 22 Lipca 2011 div to dzielenie w liczbach całkowitych (przyjaznych dla procesora), a / to dzielenie na liczbach zmiennoprzecinkowych. w div procesor spokojne kończy, gdy dojdzie do przeciska (resztę wyzeruje), w / musi obliczać, aż zapełni całą pamięć liczby (skoro zmienne w GML to C++'owe double to dokładnie 52 pola). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się