Aber die Frage, die ich ursprünglich in den Raum geworfen habe bleibt: Absolut mag man da ein paar Sekunden sparen. Aber hier mal Praxisbezogen: Hast du ein irgendein produktives Programm, wo eine Tabelle in etwa mit dieser Größenordnung ( Breite * Zeilen ) verwendet wird. Und für dieses Programm würde ich dann gerne mal den prozentualen Anteil der Laufzeit wissen, den das dann gemacht hätte.Dele hat geschrieben:...Habe gerade nochmal einen kleinen Test gemacht: eine ITAB mit 700.000 Zeilen - Struktur MARA. In unserem Testsystem benötigt der Modify ca. 0,6 Sekunden länger. Sollte das Programm nur ein paar mal am Tag laufen, dann interessiert das wohl kaum jemanden. Aber wenn es 1.000 mal und mehr am Tag laufen würde, dann wären es mindestens 600 teure Rechnersekunden inklusive unnötigem Energieverbrauch.
Da stimme ich dann doch wieder zuDele hat geschrieben:Wenn man also die Gesamtsystemlast berücksichtigt, dann macht es eigentlich immer Sinn sich für die schnellere Variante zu entscheiden, zumal im konkreten Fall (aus meiner Sicht!) kein softwaretechnischer Nachteil entsteht.]
Es galt halt die Regel "Programme sollen beim Kunden nicht dumpen; das macht sich gar nicht gut."ewx hat geschrieben:Ich wusste gar nicht, dass robuste Programmierung so einfach sein kann...
Da staune ich, da Du laut Signatur in Hamburg wohnst, denn nach allem, was ich gehört habe, fahren die Leute dort doch alle wie Henker. Hier in Berlin ist zwar das Ordnungsamt wie's Vieh, wenn Du vor einem abgesenkten Bordstein parkst, wo theoretisch jemand auf die Idee kommen könnte, die Straße zu überqueren (was er zwischen den Autos problemlos auch hinbekommen würde, und an Behinderte glaube ich nicht, da auf der anderen Seite der Fahrbahn der Bordstein nicht abgesenkt ist), aber auf kleinere Schnitzer im Verkehr achtet keiner. Ich persönlich fahre mit dem Fahrrad zur Arbeit; da haste in Berlin praktisch Narrenfreiheit. Ich semmele beliebig mit dem Rad über rote Ampeln (natürlich im Sinne der Selbsterhaltung sorgsam darauf achtend, dass nix anbrennt. Da sind Radfahrer ja deutlich im Vorteil, da sie höher sitzen als die meisten Autofahrer und eien Rundumsicht haben, von der Autofahrer mit ihren modernen Schießschartenfenstern nur träumen) und bin auch schon auf dem linken Bürgersteig an Polizisten vorbeigeradelt, die da irgendwas zu tun hatten. Die haben genug Arbeit und kümmern sich um sowas nicht. Leben und Leben lassen. Hingeschaut wird nur, wenn etwas passiert, und das ist mir auch lieber so. Verantwortung statt Paragraphenreiten.ralf.wenzel hat geschrieben:...solltest du hoffen, dass die Polizei dich dabei nicht sieht. Ich kenne wirklich Leute, die dafür schon eine Strafe bezahlt haben.DeathAndPain hat geschrieben:Wenn ich aber aus irgendeinem Grund nur mal rasch umparken und dafür 50 m weiter fahren möchte
Ich weiß nicht, wo du das her hast, aber es stimmt nicht. In den mir bekannten Unfallstatistiken liegen nicht nur die fünf neuen Länder immer weit vorn, sondern HH sogar weit hinten (Unfälle/Verletzte/Tote pro Mio EW).DeathAndPain hat geschrieben:Da staune ich, da Du laut Signatur in Hamburg wohnst, denn nach allem, was ich gehört habe, fahren die Leute dort doch alle wie Henker.
Nein, es ist der Beweis, dass dein "ich hab davon gehört" sich nicht belegen lässt durch offizielle Zahlen. Aber wenn du ganz feste dran glaubst, dann wird das bestimmt so sein, wie du denkst.DeathAndPain hat geschrieben:Das wäre ja nur ein Beleg dafür, dass hohe Geschwindigkeit nicht notwendigerweise mit hohen Unfallzahlen korreliert ist.
Nun kommst du mir zum gleichen Thema das zweite mal mit Riesenkonzernen. Diese Argumentation geht doch voll am Thema vorbei.Wenn ein Programm, das 700.000 Zeilen einer internen Tabelle modifiziert, 1.000 mal und mehr am Tag laufen würde, dann würde ich als erstes die Frage stellen, was da abgeht. Wenn das wirklich so ein Riesenkonzern ist, dass sowas gerechtfertigt ist, dann wird man auch in ganz anderer Größenordnung Hardwareleistung haben als Dein "Testsystem". Und dann reden wir am Ende doch nur wieder von ein paar Sekunden, über die man nicht reden muss.
Da kann man mit anderen Softwareoptimierungen viel mehr bewegen.
DeathAndPain hat geschrieben:Natürlich hat er es verstanden, genau wie ich auch. Aber es ist eben nicht so gut lesbar, wenn man mit einer Feldzuweisung irgendwo inmitten einer Tabelle ein Feld ändert, als wen nman die zu ändernde Zeile in einer (wie auch immer gearteten) Workarea vorbereitet und dann per MODIFY explizit sagt, jetzt ändere die Tabelle.gtoXX hat geschrieben:Er zeigt es Dir nur nicht an, wenn Du das Wesen von Feldsymbolen nicht verstanden hast, sorry.
Langsamer ja. "X-fach langsamer" würde ist gerne einen Nachweis sehen.Ein Feldsymbol ist ein Pointer. Ein Modify ist immer xfach langsamer, da speicher hin und herkorpiert werden muss anstatt gleich auf den Speicherbereich zu schreiben.
In älteren Releases (3.x) war das direkte Ändern von Tabellenzeilen über Feldsymbole meines Wissens gar nicht möglich. Die Sprache hat sich da weiterentwickelt und ist flexibler geworden. Aber zu behaupten, die ganzen alten Systeme seine alle von der Software her langsam und ineffizient gewesen, finde ich ziemlich anmaßend. black_adept hat es gut auf den Punkt gebracht: Zeige mir mal ein produktives Programm, bei dem eine Umstellung von MODIFY auf Feldsymbole überhaupt eine nicht nur messbare, sondern auch nennenswert wahrnehmbare Performanceverbesserung gebracht hätte (ohne dass das Programm schon vorher in anderer Hinsicht ineffizient programmiert gewesen wäre).Bei wirklich großen Tabellen, wäre dein Vorgehen mit Modify extrem sträflich und würde von mir nicht in ein P System gelagen.