Effektiveres Swaping
-
volkard schrieb:
Nein. Du blockierst nur die ALU.
Undasm xchgist noch schlimmer, weil es lockt.
Generell ist std::swap optimal. Weil es so wichtig ist, würde dein Compilerhwersteller schon dafür sorgen, daß es für integers zu drei xor compiliert werden würde, falls das schneller wäre.Aha. OK, danke!
-
SeppJ schrieb:
Worst library ever!
Ich werde sie ja nicht kommerzialisieren...
-
EOutOfResources schrieb:
SeppJ schrieb:
Worst library ever!
Ich werde sie ja nicht kommerzialisieren...
Das kümmert mich nicht, was du damit machst (abnehmen wird sie dir sowieso niemand). Aber wenn du ca. 10 Threads in einer Woche aufmachst zu 10 verschiedenen Designfragen und in allen Threads wird dir gesagt, dass du Dummfug machst und du beharrst trotzdem auf deinen vermurksten Konzepten, dann würde ich mir langsam mal Gedanken machen, ob das wirklich gut ist, was du da machst.
-
SeppJ schrieb:
dann würde ich mir langsam mal Gedanken machen, ob das wirklich gut ist, was du da machst.
Was soll ich sonst tun?
-
EOutOfResources schrieb:
SeppJ schrieb:
dann würde ich mir langsam mal Gedanken machen, ob das wirklich gut ist, was du da machst.
Was soll ich sonst tun?
Sagen, was deine Library macht und freundlich nach Design-Tipps fragen.
-
ipsec schrieb:
Sagen, was deine Library macht
Algorithmen anbieten.
-
EOutOfResources schrieb:
ipsec schrieb:
Sagen, was deine Library macht
Algorithmen anbieten.
Und solche Antworten sind der Grund, warum dir niemand vernünftig helfen kann. Aber das ist nicht mein Problem. Es ist deine Zeit, die du auf einen hinterher völlig unbrauchbaren Haufen Schrottcode verschwendest.
-
EOutOfResources schrieb:
ipsec schrieb:
Sagen, was deine Library macht
Algorithmen anbieten.
Algorithmen gibts es schon mit
#include <algorithm>
-
SeppJ schrieb:
Es ist deine Zeit, die du auf einen hinterher völlig unbrauchbaren Haufen Schrottcode verschwendest.
Ich weiss, und das habe ich schon gesagt.
-
Chaosbot schrieb:
Algorithmen gibts es schon mit
#include <algorithm>Ich meine, Algorithmen wie SHA oder Mergesort.
EDIT: Ja, ich kenne OpenSSL. Mein Ziel ist es nicht, eine so tolle Bibliothek wie
boostzu schreiben, sondern mich in die Materie zu vertiefen.
-
EOutOfResources schrieb:
sondern mich in die Materie zu vertiefen.
Gerade dann ist doch ein guter, sauberer Code etwas erstrebenswertes. Und in der Regel viel schneller als alles, was ein Anfänger oder Fortgeschrittener durch Mikrooptimierung hinbekommen kann. Man muss schon wirklich ein Experte für einen Prozessortyp sein, um die Effizienzwerte eines optimierenden Compilers überbieten zu können. Wobei wichtig ist, dass der Compiler weiß, was du willst. Wie hier im Beispiel, wo durch std::swap eindeutig wäre was du willst, während der XOR-Trick vermutlich 1:1 umgesetzt werden müsste ohne optimiert zu werden, weil der Compiler rätselt, was das überhaupt erreichen soll.
Aber ich halte mich im weiteren raus. Du hast klar gemacht, dass du keine echte Hilfe möchtest.