Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Asembler a C++]Prędkość po połączeniu języków

Ostatnio zmodyfikowano 2013-02-15 09:35
Autor Wiadomość
RazzorFlame
Temat założony przez niniejszego użytkownika
[Asembler a C++]Prędkość po połączeniu języków
» 2013-02-10 14:02:46
Witam. Mam pytanie. Czy kiedy w Assembly napisze funkcje powiedzmy Dodaj(int,int) to będzie (po importowaniu do c++) szybsze niż funkcja napisana w taki sposób:
C/C++
int Dodaj( int a, int b )
{
    return a + b;
}
Wydawałoby się że tak, no ale zapytać nie zaszkodzi :)
P-76085
m4tx
» 2013-02-10 15:09:33
Wiesz, najwęższym gardłem całego programu będzie użycie tej funkcji (+2 skoki dla procesora)...
Po co pisać w asmie coś tak prostego? Nie sądzę, żeby coś to dało :)
I ostatnie pytanie: czemu sam nie sprawdzisz? :P
P-76096
Mrovqa
» 2013-02-10 15:20:03
Nie opłaca się pisać krótkich funkcji w assembly - masz dwa dodatkowe skoki, które niestety czyszczą cache procesora - a to jest niemały spadek wydajności. Lepiej jest użyć inline. Co do większych funkcji - wyobraź sobie napisanie takiego kodu, a co dopiero utrzymanie. Nie opłaca się. Ponadto kompilatory naprawdę nieźle optymalizują kod, a osoby, które się na tym nie znają po prostu napiszą wolniejszy kod.
Wniosek: nie warto. O ile jakimś cudem uda Ci się zyskać lepszą wydajność, to nie dość, że będzie ona minimalnie wyższa, to nakład pracy był gigantyczny. Przy dzisiejszych komputerach i stale się rozwijającej technologii - odpuść sobie.
P-76098
DejaVu
» 2013-02-10 21:32:11
Nie opłaca się czegokolwiek pisać w asemblerze jeżeli nie tworzysz sterownika sprzętowego :) Algorytmy należy optymalizować, a nie instrukcje.
P-76117
RazzorFlame
Temat założony przez niniejszego użytkownika
» 2013-02-11 12:19:51
Hehe zastanawiam się jak szybka by była gra np. Gothic 3 gdyby jakimś cudem w całości była pisana w asemblerze :P Ciekawe jakie wymagania by miała.
P-76131
Mrovqa
» 2013-02-11 13:07:50
Zacznijmy od tego, że gdyby była pisana w asmie to by w ogóle nie powstała... ;)
Jakie by miała wymagania i wydajność? Zapewne porównywalne do oryginału. Z resztą Gothic 3 to stara gra, więc wiesz... :P
P-76134
m4tx
» 2013-02-11 15:50:52
Nie opłaca się czegokolwiek pisać w asemblerze jeżeli nie tworzysz sterownika sprzętowego :) Algorytmy należy optymalizować, a nie instrukcje.
Akurat sterowniki często pisze się nie w Asmie, a w C... :)
P-76142
DejaVu
» 2013-02-11 16:02:10
@up: ale czasami wstawki są niezbędne.
P-76145
« 1 » 2
  Strona 1 z 2 Następna strona