{"id":11310,"date":"2015-10-12T00:09:48","date_gmt":"2015-10-11T22:09:48","guid":{"rendered":"http:\/\/www.bernd-leitenberger.de\/blog\/?p=11310"},"modified":"2015-10-11T10:12:25","modified_gmt":"2015-10-11T08:12:25","slug":"schummelprogramme","status":"publish","type":"post","link":"https:\/\/www.bernd-leitenberger.de\/blog\/2015\/10\/12\/schummelprogramme\/","title":{"rendered":"Schummelprogramme"},"content":{"rendered":"<p>Der Skandal um VW hat nun ja Wellen geschlagen und er veranlasst mich zu meinem Blog &uuml;ber Programme die ein sagen wir mal etwas gesch&ouml;ntes Bild der Wirklichkeit bieten. In der Automobilindustrie ist dass vielleicht die Ausnahme, vielleicht auch die Regel, das wird sich zeigen, aber in der Informationstechnologie ist es die Regel. Hier mal einige Beispiele von &#8222;Schummelprogrammen&#8220;.<\/p>\n<p>Schon zu DOS Zeiten ging das los. Sp&auml;testens als der IBM AT erschien brauchte man einen Benchmark um die Computer zu vergleichen. Sehr bald etablierte sich der Norton Sysinfo Index (SI) als Ma&szlig;stab. Die Norton Utilities hatten ein Programm das neben Systeminformationen auch einen Geschwindigkeitsindex relativ zum IBM PC (1.0). Einige (von Herstellern gepatchte) DOS-Versionen erkannten das Programm und verstellten den Systemtimer der zur Zeitmessung diente. Diese Ma&szlig;nahme ist eigentlich nicht n&ouml;tig, denn das Programm selbst kann man als Schummelprogramm einstufen. Die Programmierer haben es sich sehr einfach gemacht und die Messung erfolgt in einer kleinen Schleife. In dieser kamen zwei Befehle vor f&uuml;r die der 8086 sehr lange brauchte: IMUL und IDIV. Diese Befehle kamen in normalen Programmen relativ selten vor und die Nachfolger des 8086 beschleunigten gerade diese sehr stark. So hatte ein 8086 bei gleicher Taktfrequenzeinen SI-Wert der sechsmal h&ouml;her als beim IBM PC war. In Wirklichkeit war er aber nur etwa dreimal schneller.<!--more--><\/p>\n<p>Mit Windows gerieten dann auch die Grafikkarten ins Visier der Trickserei. Hier wurde bald ein Benchmark der Ziff-Davis-Gruppe bedeutend die in den USA viele Computerzeitschriften herausbrachte. Sehr bald erschienen Grafikkarten die erkannten dass man immer die gleichen Operationen durchf&uuml;hrte und sie bei einer schleife nur einmal durchf&uuml;hrten und danach nur noch die letzten Ergebnisse anzeigten. Beim Anzeigen von Text benutzten einige bei dem immer gleichen Text sogar oft ein vorgerendertes Pixelmuster wiedergaben. &Auml;nderte man nur einen Buchstaben so brach die Performance enorm ein.<\/p>\n<p>Das setzte sich bei den 3D-F&auml;higkeiten fort. Hier fragten die Treiber den Dateinamen ab und ersetzten die Ausgabe des Programms durch eine vorher berechnete. Benannte man die Benchmarkprogramme um, so fiel es schon auf. Das Schummelprogramm f&uuml;r mich schlechthin ist &#8222;Softram 95&#8220;, f&uuml;r das die ct&#8216; die den <a href=\"http:\/\/www.heise.de\/ct\/artikel\/Placebo-forte-284374.html\">Skandal aufdeckte<\/a> die Bezeichnung Placebosoftware erfand. Als Windows 95 erschien hatten die meisten Rechner zu wenig RAM. Windows 95 brauchte etwa 16 MB um fl&uuml;ssig zu laufen, da damals RAM durch eine Verknappung der Produktion teuer war, hatten selbst neue Computer nur 8 MB.\u00a0 Syncronys Softcorp der Hersteller brachte nun das Programm Softram 95 aus, das versprach durch Umschaufeln kritischen Speicher freizugeben und den Speicherinhalt zu komprimieren. In Wirklichkeit vergr&ouml;&szlig;erte es nur die Auslagerungsdatei und bog die Ausgabe der Windows Systemsteuerung &uuml;ber die benutzten Ressourcen um, so dass der Anwender sah dass er angeblich mehr freies RAM und Ressourcen hatte.<\/p>\n<p>Geschummelt wird auch heute noch, selbst bei offiziellen Einstufungen. Nehmen wir die Intel-Prozessoren seit der Einf&uuml;hrung der iCore Serie vor 5 Jahren. Glaubt man Intel, so haben sie seitdem mit jeder Generation um durchschnittlich 25% an Geschwindigkeit zugelegt. Schaut man sich das reale Verhalten von Anwendungsprogrammen an, so merkt man nichts davon. Skylake ist nach ersten Ergebnissen nur noch 1-3% schneller als die letzte Generation Broadwell. Der Grund liegt in der Ber&uuml;cksichtigung von neuen Befehlen die z.B. Verschl&uuml;sselungsoperationen oder im wissenschaftlichen Bereich wichtig die AVX Befehle. Die findet man auch im Linpack Benchmark der f&uuml;r die Einstufung der Performance bei Supercomputern genutzt wird. Er ist extrem prozessorfreundlich und in ihm ist die wichtigste Operation eine Matrixmultiplikation. Wei&szlig; man dass selbst bei den Intel-Compilern eine Matrixmultiplikation durch den Compiler &uuml;bersetzt viermal langsamer abl&auml;uft als die Bibliotheksfunktion so wei&szlig; man wo da geschummelt wird. Nichts gegen optimierte Bibliotheken, doch im t&auml;glichen Leben kann man eben nicht nur Bibliotheken nutzen. Auf der anderen Seite ist die x64 Architektur weitestgehend durchoptimiert. Die &Auml;nderungen in den letzten Generationen sind eher klein und so auch der Gewinn. Intel konzentriert sich inzwischen mehr auf andere Aspekte wie Energieeffizienz und die Performance der integrierten Grafik die weitaus st&auml;rker in den letzten Jahren an Geschwindigkeit zulegte (allerdings auch nur durch mehr Shadereinheiten).<\/p>\n<p>Zur&uuml;ck zu VW. Das es hier Jahre dauerte bis der Trick herauskam (installiert wurde die Software schon 2008) liegt an zwei Dingen. Das eine ist die Computerarchitektur eines PKW, das andere das Testverfahren. Auch wenn heute ein Mittelklassewagen mehrere Dutzend Steuerger&auml;te beinhaltet ist es keine saubere Umgebung. Jedes Ger&auml;t kann von einem anderen Zulieferer stammen. Sie kommunizieren &uuml;ber den CAN-Bus aber jeder versteht nur bestimmte Botschaften, es gibt also kein gemeinsames Protokoll. Daneben versucht die gesamte Industrie Sicherheit durch Obfuscation zu bekommen, also indem sie nicht offenlegt wie etwas funktioniert. Der Kilometerstand ist z.B. nicht so abgesichert, dass er nur hochgez&auml;hlt werden kann wenn sich das auto bewegt, sondern als Wert abgelegt &#8211; zur Sicherheit vor F&auml;lschung aber mehrmals an verschiedenen Stellen. Letztes Jahr deckte die ct auf, dass die Kommunikation zum Entsperren des Wagens mit diesem Pieper auch wichtige Zugangsdaten f&uuml;r weitere Subsysteme &uuml;bermittelte &#8211; super geeignet um den Wagen zu starten und zu klauen.<\/p>\n<p>Das zweite war das Messverfahren. Soweit ich informiert bin musste sie Schummelsoftware nicht besonders komplex sein. Ein Abgastest auf einem Pr&uuml;fstand zeichnet sich durch zwei Dinge aus die im normalen Betrieb nicht vorkommen: Das Lenkrad wird nicht bewegt und es bewegen sich nur die Vorderr&auml;der wo der Antrieb sitzt. Nun kann auf einer langen geraden Strecke das Lenkrad nicht bewegt werden, aber dann bewegen sich die Hinterr&auml;der. Es kann bei einem feststehenden Wagen der im Schlamm steckt sich die Vorderr&auml;der durchdrehen, doch dann wird man das Lenkrad drehen um herauszukommen, vor allem aber wird man so nicht lange den Motor betrieben, weil man sonst nur noch tiefer in den Schlamm kommt. Es reichte also beide Dinge festzustellen um zu &#8222;schummeln&#8220;. Bewegte man bei den Tests nur das Lenkrad so gab es schon realistische Werte.<\/p>\n<p>Meine Kritik richtet sich aber gegen diese synthetischen Tests genauso wie synthetische Computerbenchmarks. Schon lange wei&szlig; man dass die Verbrauchsdaten von Neuwagen viel h&ouml;her sind als die Herstellerangeben. Ein Test mit einem neuen Gold und einem uralten Golf II im Mix von Stadt und Autobahn ergab dass der Golf II sparsamer war, obwohl die Herstellerangaben etwas anderes aussagten. Der einfache Grund: Bei den Tests wird kein Verbraucher zugeschaltet, keine Heizung, keine Klimaanlage, keine Scheinwerfer, nur der Motor l&auml;uft. Die brauchen heute aber eine Menge Energie. Daneben wiegt ein neuer Golf erheblich mehr als der Golf II. Realistisch w&auml;re das Messen eines Profils auf einer realen Strecke durch die Stadt und die Autobahn, gerne auch mit Staus, die soll es im wirklichen Leben auch geben, in jedem Falle aber mit Ampelstopps und &Uuml;berholman&ouml;vern. Sicher schwanken so je nach verkehr die Me&szlig;werte, doch dann wendet man das an was man immer in solchen F&auml;llen tut: man wiederholt die Messungen und bildet Mittelwerte. Es ist aber in jedem Falle aufwendiger als das Auto einfach auf den Pr&uuml;fstand zu stellen. Geschummelt wird auch so. Neben dem Messen ohne Verbraucher d&uuml;rfen f&uuml;r den Gesamt CO2-Aussto&szlig; ihrer Flotte die Hersteller auch die Elektroautos hinzunehmen und die haben per Definition keinen CO2-Aussto&szlig; und werden sogar mit dem Faktor 1,5 bewertet: 1 Million Elektroautos entsprechen so 1,5 Millionen Autos ohne Kohlendioxydemission die f&uuml;r den Mittelwert aller Wagen hinzugenommen werden. Angesichts der wenigen Elektroautos die in Deutschland produziert werden, n&uuml;tzt das aber vor allem den ausl&auml;ndischen Herstellern. Von den 2014 zugelassenen wurden &uuml;brigens mehr als die H&auml;lfte von den Fahrzeugbauern selbst zugelassen &#8211; tja so senkt man seine Abgasemissionen&#8230;.<\/p>\n<p>Zuletzt noch zum Schummeln selbst. Die prinzipielle Reduktion der Stickoxyde erfolgte nach VW-Angaben durch einen Sammelbeh&auml;lter der sie sammelte und periodisches Einspritzen von Kraftstoff zur Nachverbrennung in dem Beh&auml;lter. Das sie funktioniert zeigen ja die niedrigen Messungen im Pr&uuml;fstand. Warum wird es dann nicht immer so gemacht? Zwei Erkl&auml;rungen g&auml;be es: entweder steigt so im Routinebetrieb der Kraftstoffverbrauch unm&auml;&szlig;ig an, was auch nicht gew&uuml;nscht ist oder das geht nur so solange es kurzzeitig erfolgt, dauerndes Einspritzen und Nachverbrennen konnte den Beh&auml;lter, einen umger&uuml;steten Katalysator wohl &uuml;berhitzen und besch&auml;digen. Immerhin will VW ja nun das Problem hardwaretechnisch l&ouml;sen und nicht nur durch ein Softwareupdate.<img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg06.met.vgwort.de\/na\/4371ccb15e7f4ab6b129afcbb860315b\" width=\"1\" height=\"1\" alt=\"\"\/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Der Skandal um VW hat nun ja Wellen geschlagen und er veranlasst mich zu meinem Blog &uuml;ber Programme die ein sagen wir mal etwas gesch&ouml;ntes Bild der Wirklichkeit bieten. In der Automobilindustrie ist dass vielleicht die Ausnahme, vielleicht auch die Regel, das wird sich zeigen, aber in der Informationstechnologie ist es die Regel. Hier mal [&hellip;]<\/p>\n","protected":false},"author":169,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1,4],"tags":[1657,3952,1354,3948,3951],"class_list":["post-11310","post","type-post","status-publish","format-standard","hentry","category-allgemein","category-computer","tag-benchmark","tag-schummelprogramme","tag-softram","tag-vw","tag-windows-95","entry"],"a3_pvc":{"activated":false,"total_views":476,"today_views":0},"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":18683,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/06\/01\/die-glorreichen-10-programmiersprachen-2\/","url_meta":{"origin":11310,"position":0},"title":"Die glorreichen 10 \u2013 Programmiersprachen (2)","author":"Bernd Leitenberger","date":"1. Juni 2026","format":false,"excerpt":"Der heutige Teil schlie\u00dft nahtlos an den ersten Teil an, der gestern erschien. Es geht um 10 Kriterien anhand derer man Programmiersprachen kategorisieren kann. Maschinennah oder universell, aber komplex Als eine maschinennahe Sprache bezeichnet man eine Sprache, die nahe den M\u00f6glichkeiten von Prozessoren ist. Das Paradebeispiel ist C. Alle Prozessoren\u2026","rel":"","context":"In &quot;Die Glorreichen 10&quot;","block_context":{"text":"Die Glorreichen 10","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/die-glorreichen-10\/"},"img":{"alt_text":"","src":"https:\/\/vg09.met.vgwort.de\/na\/7f5d9cf5265047179df05b778bf455b5","width":350,"height":200},"classes":[]},{"id":18676,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/05\/31\/die-glorreichen-10-programmiersprachen\/","url_meta":{"origin":11310,"position":1},"title":"Die glorreichen 10 \u2013 Programmiersprachen","author":"Bernd Leitenberger","date":"31. Mai 2026","format":false,"excerpt":"Ich wollte mal eine Reihe in dieser Rubrik \u00fcber Programmiersprachen machen. Zuerst dachte ich daran eine Liste nach meinen pers\u00f6nlichen Favoriten zu erstellen. Anfangs bef\u00fcrchtete ich, dass ich gar nicht auf 10 komme, aber es sind tats\u00e4chlich mehr, wenngleich ich in vielen Sprachen nur kleine Programme verfasst habe oder mich\u2026","rel":"","context":"In &quot;Die Glorreichen 10&quot;","block_context":{"text":"Die Glorreichen 10","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/die-glorreichen-10\/"},"img":{"alt_text":"","src":"https:\/\/vg09.met.vgwort.de\/na\/4073c4f9dc6943a08702cdde13605d43","width":350,"height":200},"classes":[]},{"id":18380,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2025\/09\/03\/die-glorreichen-10-das-war-mal-weg-pc-hardware\/","url_meta":{"origin":11310,"position":2},"title":"Die glorreichen 10 &#8211; Das war mal weg: PC Hardware","author":"Bernd Leitenberger","date":"3. September 2025","format":false,"excerpt":"Ich will heute mal zwei ZDF Info \/ Neo Sendungen verbinden. Die glorreichen 10, die bei mir als Vorlage f\u00fcr einige Blogs dienten und die von mir noch mehr gesch\u00e4tzte Sendung \"Das war mal weg\", wo es um Dinge geht, die fr\u00fcher fast jeder hatte und die heute aus unserem\u2026","rel":"","context":"In &quot;Die Glorreichen 10&quot;","block_context":{"text":"Die Glorreichen 10","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/die-glorreichen-10\/"},"img":{"alt_text":"","src":"https:\/\/vg02.met.vgwort.de\/na\/876c61d389304d98aa0332fadd769381","width":350,"height":200},"classes":[]},{"id":18610,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/03\/27\/galileos-cds-teil-1\/","url_meta":{"origin":11310,"position":3},"title":"Galileos CDS &#8211; Teil 1","author":"Bernd Leitenberger","date":"27. M\u00e4rz 2026","format":false,"excerpt":"Hall\u00f6chen, es wird Zeit das ich mich mal wieder melde. Es gab zwei Gr\u00fcnde, warum ich mich so rar gemacht habe. Das eine ist das es gerade nicht so viel aktuelles gibt, au\u00dfer einem Update zu Artemis, zu dem ich vielleicht noch etwas schreibe. W\u00e4hrend Trump das ganze Programm nach\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/vg07.met.vgwort.de\/na\/4fb81c7bafbd4d9d88b5695abdb33d29","width":350,"height":200},"classes":[]},{"id":18485,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/01\/13\/programm-437\/","url_meta":{"origin":11310,"position":4},"title":"Programm 437","author":"Bernd Leitenberger","date":"13. Januar 2026","format":false,"excerpt":"Ich wei\u00df, ich mache mich in den letzten Wochen etwas rar. Daf\u00fcr gibt es zwei Gr\u00fcnde. Da ist zum einen die gesamte politische Lage. Prim\u00e4r nat\u00fcrlich in dem Land des unbegrenzten Irrsinns. Wenn der Machthaber von Venezuela entf\u00fchrt wird und unter falscher Begr\u00fcndung angeklagt wird - weil es ja in\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/vg06.met.vgwort.de\/na\/3d6eb16326d743baa56f5ece884b5d21","width":350,"height":200},"classes":[]},{"id":18531,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/02\/18\/thor-launchpad-chaos-und-nicht-geflogene-thor\/","url_meta":{"origin":11310,"position":5},"title":"Thor Launchpad Chaos und nicht geflogene Thor","author":"Bernd Leitenberger","date":"18. Februar 2026","format":false,"excerpt":"Hall\u00f6chen, es wird mal Zeit, dass ich mich wieder melde. Der Grund f\u00fcr die wenigen Posts in letzter Zeit ist das ich flei\u00dfig an meinem Buch \u00fcber die Thor-Delta arbeite. Inzwischen habe ich, was die Fakten angeht, nur noch die Delta 5 vor mir und einige kleinere Erg\u00e4nzungen zur 4-Digit\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"\/img\/launchpads-thor.png","width":350,"height":200,"srcset":"\/img\/launchpads-thor.png 1x, \/img\/launchpads-thor.png 1.5x, \/img\/launchpads-thor.png 2x, \/img\/launchpads-thor.png 3x"},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts\/11310","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/users\/169"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/comments?post=11310"}],"version-history":[{"count":0,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts\/11310\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/media?parent=11310"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/categories?post=11310"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/tags?post=11310"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}