[PUG] gcc -O1 geht schneller als -O2 Optimierung

2010-11-26 Diskussionsfäden Denny Schierz
hi,

von einem Professor habe ich eine Mail erhalten, in der er sagt, dass
ein Programm, welches mittels -O2 kompiliert wurde, mehr Zeit für die
Abarbeitung der Datensätze benötigt, als ein Programm welches mittels
dies mit -O1  (also ohne Optimierung) übersetzt wurde. Er bezieht das
auf ein Problem, was wohl mit Vmware selbst zusammenhängen muss.

Ich weiß jetzt allerdings nicht, mit welchen Worten ich Google füttern
muss, um dem ganzen auf die Schliche zu kommen.

cu denny


signature.asc
Description: This is a digitally signed message part
--

PUG - Penguin User Group Wiesbaden - http://www.pug.org


Re: [PUG] gcc -O1 geht schneller als -O2 Optimierung

2010-11-26 Diskussionsfäden lano

Denny Schierz schrieb:

hi,

von einem Professor habe ich eine Mail erhalten, in der er sagt, dass
ein Programm, welches mittels -O2 kompiliert wurde, mehr Zeit für die
Abarbeitung der Datensätze benötigt, als ein Programm welches mittels
dies mit -O1  (also ohne Optimierung) übersetzt wurde. Er bezieht das
auf ein Problem, was wohl mit Vmware selbst zusammenhängen muss.

  

-O1 heißt nicht das keine Optimierung benutzt wird.

bei -O2 werden nur Optimierungen eingeschaltet die mehr Geschwindigkeit 
bringen aber den Speicherverbrauch nicht erhöhen.



Was hat gcc denn mit Vmware zutun ?


-Sven-
--

PUG - Penguin User Group Wiesbaden - http://www.pug.org


Re: [PUG] gcc -O1 geht schneller als -O2 Optimierung

2010-11-26 Diskussionsfäden Laurence Tonke
Hi Denny,

grundsätzlich gilt: Eine höhere Optimierungsstufe bringt nicht immer
mehr Performance.

Die Leute suchen immer gerne den Knopf tunen, den man einfach drücken
muss und schon läuft alles wie von Zauberhand schneller, aber den gibt
es nicht und wenn es ihn gäbe wäre er vernünftigerweise schon
automatisch aktiviert.
Im Grunde genommen muss man sich seine Anwendung anschauen und überlegen
was man tunen will bzw. untersuchen wo eigentlich das Problem liegt,
denn auch die beste Compiler-Optimierung kann Sachen wie schlecht
formulierte SQL-Statements oder unnötig durchlaufenen Programmcode nicht
beheben.

Gruß
Laurence

On 11/26/2010 11:11 AM, Denny Schierz wrote:
 hi,
 
 von einem Professor habe ich eine Mail erhalten, in der er sagt, dass
 ein Programm, welches mittels -O2 kompiliert wurde, mehr Zeit für die
 Abarbeitung der Datensätze benötigt, als ein Programm welches mittels
 dies mit -O1  (also ohne Optimierung) übersetzt wurde. Er bezieht das
 auf ein Problem, was wohl mit Vmware selbst zusammenhängen muss.
 
 Ich weiß jetzt allerdings nicht, mit welchen Worten ich Google füttern
 muss, um dem ganzen auf die Schliche zu kommen.
 
 cu denny
 
 
 
 --
 
 PUG - Penguin User Group Wiesbaden - http://www.pug.org



signature.asc
Description: OpenPGP digital signature
--

PUG - Penguin User Group Wiesbaden - http://www.pug.org


Re: [PUG] gcc -O1 geht schneller als -O2 Optimierung

2010-11-26 Diskussionsfäden Laurence Tonke
Vielleicht schickst du ihm einfach folgendes:

http://www.redhat.com/magazine/011sep05/features/gcc/
http://www.redhat.com/magazine/012oct05/features/gcc/

Da steht in der Einleitung:
In theory, the higher the optimization level, the faster your
application will run. Unfortunately, things are not always so simple.[..]

Im übrigen hat lano recht: -01 heißt nicht: ohne Optimierung!

Gruß
Laurence

On 11/26/2010 01:11 PM, Laurence Tonke wrote:
 Hi Denny,
 
 grundsätzlich gilt: Eine höhere Optimierungsstufe bringt nicht immer
 mehr Performance.
 
 Die Leute suchen immer gerne den Knopf tunen, den man einfach drücken
 muss und schon läuft alles wie von Zauberhand schneller, aber den gibt
 es nicht und wenn es ihn gäbe wäre er vernünftigerweise schon
 automatisch aktiviert.
 Im Grunde genommen muss man sich seine Anwendung anschauen und überlegen
 was man tunen will bzw. untersuchen wo eigentlich das Problem liegt,
 denn auch die beste Compiler-Optimierung kann Sachen wie schlecht
 formulierte SQL-Statements oder unnötig durchlaufenen Programmcode nicht
 beheben.
 
 Gruß
 Laurence
 
 On 11/26/2010 11:11 AM, Denny Schierz wrote:
 hi,

 von einem Professor habe ich eine Mail erhalten, in der er sagt, dass
 ein Programm, welches mittels -O2 kompiliert wurde, mehr Zeit für die
 Abarbeitung der Datensätze benötigt, als ein Programm welches mittels
 dies mit -O1  (also ohne Optimierung) übersetzt wurde. Er bezieht das
 auf ein Problem, was wohl mit Vmware selbst zusammenhängen muss.

 Ich weiß jetzt allerdings nicht, mit welchen Worten ich Google füttern
 muss, um dem ganzen auf die Schliche zu kommen.

 cu denny



 --
 
 PUG - Penguin User Group Wiesbaden - http://www.pug.org
 
 
 
 --
 
 PUG - Penguin User Group Wiesbaden - http://www.pug.org



signature.asc
Description: OpenPGP digital signature
--

PUG - Penguin User Group Wiesbaden - http://www.pug.org


Re: [PUG] gcc -O1 geht schneller als -O2 Optimierung

2010-11-26 Diskussionsfäden Denny Schierz
hi,

ich danke schonmal für die Antworten. Aber ich sollte noch etwas dazu
erwähnen:

Das Programm ist von einem Informatiker mit Mathematik als Schwerpunkt
geschrieben worden. 
Die Aufgabe des Programms ist es gerade, den Unterschied zwischen -O1
und -O2 aufzuzeigen. Auf einem Celeron D mit 3Ghz benötigt das Programm
- je nach -O - zwischen 1:40min und 1:45min. In der Virtuellen Kiste
sind es sogar über 2:01min. Dabei kommt eine VM mit Xeon 4 x 2,5Ghz ins
Spiel. Ich habe mal ein wenig optimiert und der VM CPUs fest
zugewiesen, sodass diese nicht mehr geteilt werden, mit den anderen VMs.
Nun komme ich immerhin an ~1:32. -O2 und -O1 geben sich aber nicht viel,
außer dass -O2 immernoch ein Tick (im ms Bereich)langsamer ist.

Mal schauen, ob es da noch mehr Möglichkeiten gibt.

cu denny


signature.asc
Description: This is a digitally signed message part
--

PUG - Penguin User Group Wiesbaden - http://www.pug.org


Re: [PUG] (Ein wenig HA) und Linux ISCSI Target und so Zeug

2010-11-26 Diskussionsfäden Henrik Schneider
Hab hier auch schon ein ähnliches Setup. Allerdings sind in jedem
Initiator 2 Netzwerk Adapter. Dazu passend habe ich einen SAN Switch,
über diesen laufen die Storage Verbindungen. An einen 2. Switch habe ich
dann die öffentlichen Verbindungen zu den Clients die auf die VMs
zugreifen. der Storage Server läuft mit Raid 5. der Storage Server
selbst hat keine Redundanz. ich habe auch kein plan ob man eine JBOD
Kiste und 2 SAN Köpfe benötigt. Für unsere Zwecke ist ein Raid 5 im
Server mit 7/24 Support ausreichend.

Henrik


Am 25.11.2010 18:40, schrieb Silvério Santos:
 Am 24.11.2010 13:13, schrieb Denny Schierz:
 hi,

 momentan betreten wir (vor allem ich) ein neues Feld der IT: SAN. Wir
 sind nun dabei unser eigenes SAN aufzubauen, was halbwegs HA (wir werden
 nicht alles sofort schaffen, schon wegen des Geldes nicht) sein soll und
 da fehlt es ein wenig an KnowHow.
 [viele Gedanken...]
 Das waren jetzt mehr so Gedankengänge, aber eventuell kann ja einer was
 von euch dazu sagen 
 Hi denny,
 
 Ja, aber nur zu meinen Tests des ISCSI Enterprise Target unter Linux:
 - Debian Etch mit dem mitgelieferten Kernelmodul
 - Hardware: (alter) Compaq ProLiant Server
   - mit 5 Platten im RAID-5
   - mit nur 100 MBit Ethernet Karte
   - 1 GB Ethernet Karte bringt Kernel Oops
 (bugs.debian.org/cgi-bin/bugreport.cgi?bug=521383)
 
 Zweck: zentraler Speicher für virtuelle Maschinen
 
 Ich habe Windows XP und Windows Server 2003 davon gebootet (100 MBit =
 lahm). Die Einbindung als Datenträger mit einer nachinstallierten
 MS-Software lief ebenfalls problemĺos. Details wie den Speedtest, den
 ich gemacht habe, kenne ich nicht mehr, ist schon zu lange her.
 
 Gruß
 Silvério
 --
 
 PUG - Penguin User Group Wiesbaden - http://www.pug.org




signature.asc
Description: OpenPGP digital signature
--

PUG - Penguin User Group Wiesbaden - http://www.pug.org


Re: [PUG] gcc -O1 geht schneller als -O2 Optimierung

2010-11-26 Diskussionsfäden Benjamin Peter

Hi,

ich finde die Frage ob es etwas mit der VM zu tun hat gar nicht weit her 
geholt. Durch die Optimierung könnte es meiner Meinung sein, dass etwas 
unbekanntere oder aus Kompatibilitäts-Zwecken nicht verwendete Befehle 
verwendet werden.
Diese sind auf der VM vielleicht sind so gut umgesetzt oder emuliert um 
Probleme bei der Virtualisierung zu behandeln.


Wie sind denn die Ergebnisse ohne VM? Benutzt du die VM hier um die 
Resourcen für das Programm einschränken zu können?


Für mich klingt das danach als würdest du eine Liste von (ASM) Befehlen 
suchen die man in VMs am besten nicht benutzt bzw. direkt eine 
Untersuchung wie Compiler mit VMs umgehen sollten. Stimmt das?



Gruß Ben.

Denny Schierz wrote:

hi,

ich danke schonmal für die Antworten. Aber ich sollte noch etwas dazu
erwähnen:

Das Programm ist von einem Informatiker mit Mathematik als Schwerpunkt
geschrieben worden. 
Die Aufgabe des Programms ist es gerade, den Unterschied zwischen -O1

und -O2 aufzuzeigen. Auf einem Celeron D mit 3Ghz benötigt das Programm
- je nach -O - zwischen 1:40min und 1:45min. In der Virtuellen Kiste
sind es sogar über 2:01min. Dabei kommt eine VM mit Xeon 4 x 2,5Ghz ins
Spiel. Ich habe mal ein wenig optimiert und der VM CPUs fest
zugewiesen, sodass diese nicht mehr geteilt werden, mit den anderen VMs.
Nun komme ich immerhin an ~1:32. -O2 und -O1 geben sich aber nicht viel,
außer dass -O2 immernoch ein Tick (im ms Bereich)langsamer ist.

Mal schauen, ob es da noch mehr Möglichkeiten gibt.

cu denny




--

PUG - Penguin User Group Wiesbaden - http://www.pug.org

--

PUG - Penguin User Group Wiesbaden - http://www.pug.org


Re: [PUG] (Ein wenig HA) und Linux ISCSI Target und so Zeug

2010-11-26 Diskussionsfäden Dieter Ries
welche target implementierung denn wenn man fragen darf? Ich hab hier
grade 2 8x 3ware controller und einige TB Platz bestellt, um damit
unseren KVM host mit daten zu beliefern, und weiss noch nicht ob ich
einfach iscsitarget in squeeze, was wohl enterprise iscsi ist, oder
doch lieber LIO, was ja ab 2.6.38 dann in Mainline sein soll...

cu
Dieter

Am 26.11.2010 14:52, schrieb Henrik Schneider:
 Hab hier auch schon ein ähnliches Setup. Allerdings sind in jedem
 Initiator 2 Netzwerk Adapter. Dazu passend habe ich einen SAN Switch,
 über diesen laufen die Storage Verbindungen. An einen 2. Switch habe ich
 dann die öffentlichen Verbindungen zu den Clients die auf die VMs
 zugreifen. der Storage Server läuft mit Raid 5. der Storage Server
 selbst hat keine Redundanz. ich habe auch kein plan ob man eine JBOD
 Kiste und 2 SAN Köpfe benötigt. Für unsere Zwecke ist ein Raid 5 im
 Server mit 7/24 Support ausreichend.
 
 Henrik
 
 
 Am 25.11.2010 18:40, schrieb Silvério Santos:
 Am 24.11.2010 13:13, schrieb Denny Schierz:
 hi,

 momentan betreten wir (vor allem ich) ein neues Feld der IT: SAN. Wir
 sind nun dabei unser eigenes SAN aufzubauen, was halbwegs HA (wir werden
 nicht alles sofort schaffen, schon wegen des Geldes nicht) sein soll und
 da fehlt es ein wenig an KnowHow.
 [viele Gedanken...]
 Das waren jetzt mehr so Gedankengänge, aber eventuell kann ja einer was
 von euch dazu sagen 
 Hi denny,

 Ja, aber nur zu meinen Tests des ISCSI Enterprise Target unter Linux:
 - Debian Etch mit dem mitgelieferten Kernelmodul
 - Hardware: (alter) Compaq ProLiant Server
  - mit 5 Platten im RAID-5
  - mit nur 100 MBit Ethernet Karte
  - 1 GB Ethernet Karte bringt Kernel Oops
 (bugs.debian.org/cgi-bin/bugreport.cgi?bug=521383)

 Zweck: zentraler Speicher für virtuelle Maschinen

 Ich habe Windows XP und Windows Server 2003 davon gebootet (100 MBit =
 lahm). Die Einbindung als Datenträger mit einer nachinstallierten
 MS-Software lief ebenfalls problemĺos. Details wie den Speedtest, den
 ich gemacht habe, kenne ich nicht mehr, ist schon zu lange her.

 Gruß
 Silvério
 --
 
 PUG - Penguin User Group Wiesbaden - http://www.pug.org
 
 
 
 
 --
 
 PUG - Penguin User Group Wiesbaden - http://www.pug.org

-- 
3rd Law of Computing:
Anything that can go wr
fortune: Segmentation violation -- Core dumped



signature.asc
Description: OpenPGP digital signature
--

PUG - Penguin User Group Wiesbaden - http://www.pug.org


Re: [PUG] gcc -O1 geht schneller als -O2 Optimierung

2010-11-26 Diskussionsfäden lano

Denny Schierz schrieb:

hi,

ich danke schonmal für die Antworten. Aber ich sollte noch etwas dazu
erwähnen:

Das Programm ist von einem Informatiker mit Mathematik als Schwerpunkt
geschrieben worden. 
Die Aufgabe des Programms ist es gerade, den Unterschied zwischen -O1
und -O2 aufzuzeigen. 

Eine schöne option um zu sehn was gcc aus dem code macht ist -S

-Sven-
--

PUG - Penguin User Group Wiesbaden - http://www.pug.org