Wykop.pl Wykop.pl
  • Główna
  • Wykopalisko214
  • Hity
  • Mikroblog
  • Zaloguj się
  • Zarejestruj się
Zaloguj się

Popularne tagi

  • #ciekawostki
  • #informacje
  • #technologia
  • #polska
  • #swiat
  • #motoryzacja
  • #podroze
  • #heheszki
  • #sport

Wykop

  • Ranking
  • Osiągnięcia
  • FAQ
  • O nas
  • Kontakt
  • Reklama
  • Regulamin
To Znalezisko jest w archiwum

323

Dlaczego przetwarzanie posortowanej tablicy trwa krócej niż nieposortowanej?

Dlaczego przetwarzanie posortowanej tablicy trwa krócej niż nieposortowanej?

Prosty kod napisany w C++ (jak i Javie) wykonuje się znacznie szybciej w sytuacji gdy tablica danych zostanie wcześniej posortowana. Dlaczego? Świetny przykład jak działa i jak istotne jest przewidywanie rozgałęzień w procesorach, polecam przeczytać :)

a.....r
a.....r
konto usunięte
z
stackoverflow.com
dodany: 19.12.2012, 09:49:59
  • #
    technologia
  • #
    programowanie
  • #
    c
  • #
    java
  • #
    branchprediction
  • 115
  • Otrzymuj powiadomienia
    o nowych komentarzach

Treści powiązane (2)

Optimizing software in C++: An optimization guide for Windows, Linux and Mac
zrakiep
z agner.org
  • 4
Kurs na MIT w którym takie rzeczy wyjaśnione są krok po kroku
kundziad
z ocw.mit.edu
  • 1

Komentarze (115)

najlepsze

5ss5
5ss5
19.12.2012, 10:20:08
  • 1

Komentarz usunięty przez moderatora

n.....e
n.....e
konto usunięte 19.12.2012, 19:29:25
  • 0

Komentarz usunięty przez moderatora

prusi
prusi
prusi
19.12.2012, 19:39:21
  • 0
@nme: ale to bzdura jest, bo jeśli miałbyś obie struktury w tablicy to i tak będą wyrównane. do drugiej powinieneś dodać jeszcze padding.
neoandrew
neoandrew
19.12.2012, 15:58:32
  • 0
2 FAKTY

Kompilator intela jak zwykle zdetronizował konkurencję

.NET jest bardzo szybki jak umie się go użyć, na moim pc usprawniony przykład wykonuje się w ~0,1741 milisekundy.
  • 8
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

prusi
prusi
prusi
19.12.2012, 16:34:11
  • 3
@neoandrew: bo .NET to nie do końca maszyna wirtualna - dość powiedzieć, że taka biblioteka standardowa jest ładowana w postaci dll-ek, a kod wewnątrz jest tłumaczony właściwie tak jak w kompilatorze - jedyne czym się zajmuje maszyna dotnetowa to tłumaczenie adresów. a jeśli chodzi o kompilator intela - cóż, najlepiej znają swoją architekturę - nic dziwnego.
neoandrew
neoandrew
20.12.2012, 00:39:37
  • 1
@kemek: Benchmark polega na sprawdzeniu ile czasu zajmuje wykonanie funkcji robiącej dokładnie to samo, ale różnymi algorytmami.
n.....e
n.....e
konto usunięte 19.12.2012, 19:43:46
  • -3
Więcej jest takich ciekawostek. Np. pierwsza z tych struktur ma rozmiar 24, a druga 16.

struct Test {

int b;

long
  • 5
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

badasq
badasq
19.12.2012, 22:45:53
  • 4
@nme: W jakim języku programowania? 24 i 16 czego? A wiesz że standard nie definiuje rozmiarów typów które podałeś i zależą one od maszyny i kompilatora?

Wiem, co chciałeś pokazać (chyba wyrownanie sie to nazywalo), ale bez otoczki, czyli tak jak to przedstawiles, nie ma to najmniejszego sensu.
Balon
Balon
19.12.2012, 22:48:36
  • 2
@nme: @badasq: Jesteś na dobrym tropie (tak mi się wydaje, bo nie znam polskiej terminologii). Chodzi tutaj o http://en.wikipedia.org/wiki/Data_structure_alignment . Kompilator organizuje dane w taki sposób by dostęp do nich był jak najszybszy.
b.....n
b.....n
konto usunięte 19.12.2012, 10:00:13
  • -12
Treść przeznaczona dla osób powyżej 18 roku życia...
  • 28
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

programista_abc
programista_abc
programista_abc
19.12.2012, 13:27:21
  • 40
@rss: Jako, ze jest to taki programistyczny wykop to nie mogem sie powstrzymac przed dodaniem komentarza na temat zjawiska ktore zaobserwowalismy u nas w firmie a po Twoim komentarzu wnisokuje, ze dostrzezesz pewne analogie do samego siebie :). Jezeli sie myle, to nie traktuj tego komentarza jako atak na siebie, a jesli trafilem to potraktuj to jako rade.

Otoz u nas w firmie, mamy tzw. "smieciowych programistow" ktorzy to pisza kod
m.....n
m.....n
konto usunięte 19.12.2012, 13:33:42
  • 10
@rss:

@programista_abc:

Ale @GilbertEatingGrape pisał o regulacji gaźnika. ;)
  • <
  • 1
  • 2
  • Strona 2 z 2
  • >

Hity

tygodnia

Polska wygrywa Ligę Narodów 2025 Liga Narodów (Polska-Włochy 3-0)
Polska wygrywa Ligę Narodów 2025 Liga Narodów (Polska-Włochy 3-0)
2826
Sąd oddalił skargi. Zielone światło dla terminala kontenerowego w Świnoujściu
Sąd oddalił skargi. Zielone światło dla terminala kontenerowego w Świnoujściu
2522
"Jak jakiś artysta przez lata zarabiał dużo, a nie ma emerytury, to jest id**tą.
"Jak jakiś artysta przez lata zarabiał dużo, a nie ma emerytury, to jest id**tą.
2369
AFERA: Skutery wodne między kajakami! Totalna patologia na rzece Piława
AFERA: Skutery wodne między kajakami! Totalna patologia na rzece Piława
2102
InPost NIE JEST polską firmą!
InPost NIE JEST polską firmą!
2104
Pokaż więcej

Powiązane tagi

  • #ciekawostki
  • #nauka
  • #komputery
  • #zainteresowania
  • #stacjakosmiczna
  • #polska
  • #informatyka
  • #rozrywka
  • #swiat
  • #internet
  • #wydarzenia
  • #sztucznainteligencja
  • #motoryzacja
  • #ai
  • #telefony

Wykop © 2005-2025

  • O nas
  • Reklama
  • FAQ
  • Kontakt
  • Regulamin
  • Polityka prywatności i cookies
  • Hity
  • Ranking
  • Osiągnięcia
  • Changelog
  • więcej

RSS

  • Wykopane
  • Wykopalisko
  • Komentowane
  • Ustawienia prywatności

Regulamin

Reklama

Kontakt

O nas

FAQ

Osiągnięcia

Ranking