Pytania otagowane jako performance

W przypadku pytań dotyczących pomiaru lub poprawy wydajności kodu i aplikacji.


2
Dlaczego przetwarzanie posortowanej tablicy jest wolniejsze niż nieposortowanej tablicy?
Mam listę 500000 losowo wygenerowanych Tuple<long,long,string>obiektów, na których wykonuję proste wyszukiwanie „pomiędzy”: var data = new List<Tuple<long,long,string>>(500000); ... var cnt = data.Count(t => t.Item1 <= x && t.Item2 >= x); Gdy generuję losową tablicę i uruchamiam wyszukiwanie 100 losowo wygenerowanych wartości x, wyszukiwanie kończy się w ciągu około czterech sekund. …

12
Czy użycie „var” wpłynie na wydajność?
Wcześniej zadałem pytanie, dlaczego widzę tak wiele przykładów używających varsłowa kluczowego i uzyskałem odpowiedź, że chociaż jest to konieczne tylko w przypadku typów anonimowych, to jednak jest ono używane, aby pisanie kodu było „szybsze” / łatwiejsze i „tylko dlatego”. Podążając za tym linkiem („C # 3.0 - Var Is Not …
230 c#  performance  variables  var 


2
Dlaczego występuje duży wpływ na wydajność przy zapętlaniu tablicy z 240 lub więcej elementami?
Podczas uruchamiania pętli sumy nad tablicą w Rust zauważyłem ogromny spadek wydajności, gdy CAPACITY> = 240. CAPACITY= 239 jest około 80 razy szybszy. Czy istnieje specjalna optymalizacja kompilacji, którą Rust robi dla „krótkich” tablic? Kompilowany z rustc -C opt-level=3. use std::time::Instant; const CAPACITY: usize = 240; const IN_LOOPS: usize = …

30
Rekurencja czy iteracja?
Czy jest jakiś spadek wydajności, jeśli użyjemy pętli zamiast rekurencji lub odwrotnie w algorytmach, w których oba mogą służyć temu samemu celowi? Np .: Sprawdź, czy podany ciąg jest palindromem. Widziałem wielu programistów wykorzystujących rekurencję jako sposób na popisanie się, kiedy prosty algorytm iteracji może zmieścić się w rachunku. Czy …


4
Dlaczego wprowadzenie bezużytecznych instrukcji MOV przyspieszyłoby powstanie ciasnej pętli w zestawie x86_64?
Tło: Podczas optymalizacji kodu Pascal za pomocą wbudowanego języka asemblera zauważyłem niepotrzebną MOVinstrukcję i usunąłem ją. Ku mojemu zaskoczeniu usunięcie niepotrzebnych instrukcji spowodowało spowolnienie programu . Przekonałem się, że dodanie arbitralnych, bezużytecznych MOVinstrukcji jeszcze bardziej zwiększyło wydajność . Efekt jest zmienny, a zmiany oparte na kolejności wykonywania: te same niepotrzebne …


3
Dlaczego transponowanie macierzy 512x512 jest znacznie wolniejsze niż transponowanie macierzy 513x513?
Po przeprowadzeniu niektórych eksperymentów na matrycach kwadratowych o różnych rozmiarach pojawił się wzór. Niezmiennie transpozycja macierzy rozmiaru 2^njest wolniejsza niż transpozycja macierzy rozmiaru2^n+1 . W przypadku małych wartości nróżnica nie jest duża. Duże różnice występują jednak w przypadku wartości 512. (przynajmniej dla mnie) Oświadczenie: Wiem, że funkcja nie transponuje macierzy …



24
String vs. StringBuilder
Rozumiem różnicę między Stringi StringBuilder(StringBuilder jest zmienny), ale czy istnieje duża różnica w wydajności między nimi? Program, nad którym pracuję, ma wiele dołączonych ciągów znaków (ponad 500). Czy korzystasz StringBuilderz lepszego wyboru?
215 c#  .net  performance 

13
Czy powinienem korzystać z String.format () Java, jeśli wydajność jest ważna?
Musimy cały czas budować ciągi dla danych wyjściowych dziennika i tak dalej. W wersjach JDK nauczyliśmy się, kiedy używać StringBuffer(wiele dodatków, bezpieczny wątek) i StringBuilder(wiele dodatków, nie bezpieczny wątek). Jaka jest rada na temat korzystania String.format()? Czy jest wydajny, czy też jesteśmy zmuszeni trzymać się konkatenacji dla jedno-liniowych, w których …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.