Einloggen
[c] [test] [fefe]

/c/ – Pufferüberlauf


Neuen Faden erstellen

(≤ 4)



[0] [1] [2] [3] [4] [5] [6]

  • [l] Wir optimieren Fefes Blog Felix Sat, 18 Apr 2020 02:48:34 GMT Nr. 27355
    JPG 724×407 196.4k
    Aus gegebenem Anlass wegen der Diskussion hier >>27130 hat Felix mal verschiedene Varianten getestet. [0] Einmal die Original-switch-Variante, zwei strcmp-Varianten und eine einfache if-Variante. Die Ergebnisse haben Felix überrascht – beide strcmp-Varianten waren weit abgeschlagen. Die anderen beiden waren in etwa gleichauf. Felix hatte erwartet, dass der Compiler die strcmp-Aufrufe besser optimiert.

    FEFE:    1.450s
    SIMPLE:  1.529s
    STRCMP0: 4.307s
    STRCMP1: 3.322s
    


    (kompiliert mit gcc -O2)

    Vielleicht können wir ja hier einen kleinen Optimierungswettbewerb starten :3 Felix wird seine Lösung später pfostieren.

    [0] https://pastebin.com/fdDGYMZb
39 Antworten nicht angezeigt.
  • [l] Felix Wed, 17 Jun 2020 19:27:45 GMT Nr. 30323
    PNG 200×200 12.5k
    Windows-Felix hier.
    Für mich riecht das alles sehr stark nach micro benchmark der stark davon abhängt wie warm die caches sind, was der task-scheduler so treibt und mehr.
    Man könnte mehr input-Daten auf den Code los lassen, sagen wir, 50mb text.

    Trotzdem, der Vollständigkeit halber:

    - x64
    - i7-8850H
    - 1. und 2. Lauf
    - strings.h entsorgt, wofür soll das gut sein?

    cl /DVARIANT=FEFE /O2 main.c

    real 0m0.988s
    user 0m0.000s
    sys 0m0.031s

    real 0m0.813s
    user 0m0.000s
    sys 0m0.015s


    cl /DVARIANT=SIMPLE /O2 main.c

    real 0m1.405s
    user 0m0.000s
    sys 0m0.000s

    real 0m1.039s
    user 0m0.000s
    sys 0m0.015s

    cl /DVARIANT=STRCMP0 /O2 main.c

    real 0m4.198s <- w00t?
    user 0m0.000s
    sys 0m0.000s

    real 0m3.789s
    user 0m0.015s
    sys 0m0.000s

    cl /DVARIANT=STRCMP1 /O2 main.c

    real 0m0.048s
    user 0m0.015s
    sys 0m0.000s

    real 0m0.058s
    user 0m0.015s
    sys 0m0.015s

    Erklärung: FelixBenchmark.exe: RangeChecks instrumentation code detected an out of range array access, steigt aus mit Exception. Die Security-Features müsste man jetzt noch extra abstellen. Felix vermutet die sind auch der Grund wieso STRCMP0 so langsam ist.
  • [l] Felix Wed, 17 Jun 2020 19:39:43 GMT Nr. 30325
    Nachtrag: Wahrscheinlich wäre es schlau den Code zum Zeit nehmen direkt in das Programm zu integrieren. Bei dem kleinen Arbeitspaket entfällt wahrscheinlich auch nicht unwesentlich Zeit auf den Loader und den overhead durch das dynamische Laden der C bibliothek. Oder man linkt statisch...
  • [l] Felix Wed, 17 Jun 2020 20:34:38 GMT Nr. 30330
    >>30323
    Danke für deine Messungen. Kannst du die anderen Varianten auch noch testen?

    >Erklärung: FelixBenchmark.exe: RangeChecks instrumentation code detected an out of range array access, steigt aus mit Exception.
    Das heißt also, wenn Felix es richtig verstanden hat, die Zahlen von STRCMP1 kann man bei dir nicht werten? Wo detektiert VS denn einen Pufferüberlauf?

    >Nachtrag: Wahrscheinlich wäre es schlau den Code zum Zeit nehmen direkt in das Programm zu integrieren. Bei dem kleinen Arbeitspaket entfällt wahrscheinlich auch nicht unwesentlich Zeit auf den Loader und den overhead durch das dynamische Laden der C bibliothek. Oder man linkt statisch...
    Könnte man machen, aber Felix war zu faul. Der Overhead dürfte bei dem einfachen Programm auch recht gering sein und außerdem ist er für alle Varianten gleich, also ist es immer noch ein fairer Vergleich.

    >Man könnte mehr input-Daten auf den Code los lassen, sagen wir, 50mb text.
    Würde sicherlich nicht schaden, aber dann wäre der Quellkot auch 50 MB groß, oder man müsste den Text igendwie dynamisch generieren. War einfacher, den Code einfach mehrfach auszuführen.
  • [l] Felix Wed, 17 Jun 2020 23:15:01 GMT Nr. 30337
    >>30330

    >Das heißt also, wenn Felix es richtig verstanden hat, die Zahlen von STRCMP1 kann man bei dir nicht werten? Wo detektiert VS denn einen Pufferüberlauf?

    Genau, das Programm terminiert nicht korrekt, schätze er fliegt irgendwo recht weit zu Anfang raus. Ich schaue morgen bei Gelegenheit mal wo genau er den out-of-bounds Zugriff entdeckt.
    Was mich etwas erstaunt ist dass das überhaupt entdeckt wurde, laut cl Doku schließen sich /O2 und /RTC aus. Mhm. Mal genauer nachforschen.

    >Könnte man machen, aber Felix war zu faul. Der Overhead dürfte bei dem einfachen Programm auch recht gering sein und außerdem ist er für alle Varianten gleich, also ist es immer noch ein fairer Vergleich.

    Ja vermutlich, habe jetzt auch selbst nicht getestet um das weiter untermauern zu können. Interessant wäre hier in wie weit das die Vergleichbarkeit Windows/Linux beeinträchtigt.

    >Würde sicherlich nicht schaden, aber dann wäre der Quellkot auch 50 MB groß, oder man müsste den Text igendwie dynamisch generieren. War einfacher, den Code einfach mehrfach auszuführen.

    Wobei ich ab dem 2. Lauf auch nur noch marginale Unterschiede gesehen habe. Ansonsten könnte man als Datensatz ein Buch von Projekt Gutenberg nehmen, die bieten soweit Felix weiß auch plain text als Format an.

  • [l] FFMPEG- Felix Fri, 08 Feb 2019 12:42:18 GMT Nr. 7065
    WEBM 640×480 1:23 5.1M
    6,1 MB für 83 Sekunden

    $ ffmpeg -i harmonie.mkv -b:v .5M -to 83 harmonie.webm

    Was hat Felix neulich kotiert?

    Auch: Felix alte kotier.bat:
    REM KOTIERE IM DOPPELPASS
    SET O=-b:v 0 -crf 40 -threads 8 -tile-columns 6 -y -hide_banner
    FFMPEG -i x.mp4 %O% -pass 1 -speed 4 - an -f webm NUL
    FFMPEG -i x.mp4 %O% -pass 2 -speed 2 y.webm
    

4 Antworten nicht angezeigt.
  • [l] Felix Tue, 02 Jun 2020 11:09:56 GMT Nr. 29535
    >>27354
    с каких пор для этого языка тебе нужны титры?
  • [l] Felix Wed, 03 Jun 2020 21:35:02 GMT Nr. 29668
    >>29535
    Лол.
  • [l] Felix Thu, 04 Jun 2020 01:44:07 GMT Nr. 29671
    PNG 300×256 141.1k
  • [l] Felix Tue, 09 Jun 2020 13:29:29 GMT Nr. 29889
    >>29425
    besten dank!
    ich wusste ob des CRF-Arguments, hatte jedoch für mich nie funktioniert. Offenbar hab ich bisher den -b:v MUST be 0-Teil überlesen (oder irgendwer hat endlich die Doku verbessert).

  • [l] bitch Mon, 27 Apr 2020 03:42:56 GMT Nr. 27826
    JPG 750×1334 137.4k
    whats up you german fags

  • [l] Felix Fri, 11 Oct 2019 15:28:41 GMT Nr. 16044
    JPG 600×600 32.3k
    Computer analysiere den Inhalt von Deanna Trois Mastdarm.
    >Analyse abgeschlossen
    Fülle meinen Mund damit!
3 Antworten nicht angezeigt.
  • [l] Bernd Thu, 12 Dec 2019 21:34:50 GMT Nr. 19839
    Hallo Bernd,
    Ich bin seit der letzten Passierung in Halle lauerfrei. Ich wollte mir das einfach nicht mehr antun. Es ist so schön. Ich gucke jetzt Technik Erklärvideos auf YouTube und? Erklärung? und höre Features im Deutschlandfunk.
    Lauern ist definitiv vorbei, ich bin zu alt für diesen Scheiß.
    Es bleiben die Erinnerung an DTH-Bernd, Zeitumstellungsfäden und die Schlafkatze. Sie fehlt mir ein bisschen. Sie ist ja so liep. Würde heiraten.
  • [l] Felix Wed, 08 Apr 2020 19:13:40 GMT Nr. 26770
    Hallo Bernd,
    Ich bins der Bernd.
    Manchmal vermisse ich es schon ein bisschen zu lauern. Ich könnte so viele dumme Coronafäden erstellen.
    Aber ich habe mich dazu entschlossen es einfach zu lassen.
    Mich interessiert auch nicht wo Bernd jetzt lauert, ich meine natürlich den richtigen Bernd und nicht Nachrichtenkrebs Namensschuchteln Pr0grammhuren oder Drechencrepes.
    Viel Spass beim lauern
    Bernd
  • [l] Felix Sat, 11 Apr 2020 10:14:38 GMT Nr. 26890
    >>26770
    Hallo Bernd,
    schön, dass Du deinen eigenen Fluss gefunden hast.
    Ich habe mich im Laufe der letzten Jahre mit ein paar Internetz-Gemeinschaften abseits des Hauptstroms arrangiert, von denen ein unbestimmter Anteil anonyme Bilderbretter bleibt.
    Genieße es. (Und frohe Ostern.)
    Felix
  • [l] Felix Sun, 19 Apr 2020 02:16:52 GMT Nr. 27381
    >>26890
    Sieht bei diesem noch ganz anderen Felix ähnlich aus.

  • [l] Felix Thu, 29 Nov 2018 12:20:03 GMT Nr. 4837
    JPG 613×613 81.1k
    warum ist kohlchan eigentlich so scheisse? captchas, erzwugenes javascript, gerade wohl kaputt?
    warum kann es nicht einfach und schlicht wie das gute alte krautchan sein? warum muss ein webentwickler dauernd unnötige technologien in seine webseite ballern, die keiner braucht nur um 1 naises feature zu haben?
15 Antworten nicht angezeigt.
  • [l] Felix Thu, 29 Nov 2018 12:52:37 GMT Nr. 4873
    >>4861
    >irgendwelche emoticons
    😊
  • [l] >>4846 Felix Mon, 13 Apr 2020 16:40:45 GMT Nr. 26914
    Schön daß ich dieses Bilchen "pabstsäge" hier nochmal wiederfinde
  • [l] 4846 Felix Mon, 13 Apr 2020 16:41:49 GMT Nr. 26915
    Schön daß ich dieses Bilchen "pabstsäge" hier nochmal wiederfinde
  • [l] Felix Thu, 16 Apr 2020 17:32:11 GMT Nr. 27216
    >>4869
    >Auf Krautchan durftest du nur mit heim DSL pfostieren.

    Da waren teilweise ganze ISPs dauerhaft gebannt. Und ansonsten wurden auch immer gleich riesige Netzbereiche gebannt. Ohne einen Komturcode zu erbetteln kam man also nicht weit und man musste schon viel Glück haben um einen solchen zu bekommen.

    Zudem war die Moderation teilweise wirklich willkürlich.

  • [l] Politik Felix Thu, 27 Jun 2019 17:44:22 GMT Nr. 12306
    JPG 1280×720 1.3M
    Ist hier Politik erlaubt?
1 Antwort nicht angezeigt.
  • [l] Felix Sun, 11 Aug 2019 16:33:48 GMT Nr. 13784
    LEL
  • [l] Na und Optiker! Felix Mon, 23 Sep 2019 11:09:16 GMT Nr. 15034
    >>12316
    /fefe/ ist aber eher für PoliDICK gedacht.
  • [l] Welches Brett ist für Negerfaden ? FraeuleinBernadett-Sucht-Negerfade Thu, 09 Apr 2020 22:44:27 GMT Nr. 26862
    JPG 259×194 6.5k
    Wo darf man hier Postings über Negerküsse , Sarotti Mohren , oder auch über 10 kleine Negerlein Kommentieren ohne gleich als Rassistisch mit Menschenräubern und Sklaventreibern gleich gestellt zu werden ... Sprich direkt als Nazikeule abgstempelt zu werden nur weil man etwas lustiges über die kleine Neger aus alten Zeiten Posten möchte ? Wer Politisch lieber Links von Gutmenschen zensiert und vereuchte Kommentare lesen und abgeben möchte solle meiner Meinung nach das in dem passenden Brett gerne machen . Wer eher noch wie meiner seits lieber Unzensierte "durch heutige Brainwäscherei" Bösen Politisch Unkorrekten Texte verfassen möchte wo N-Bomben auf das Fußvolk DER Wortverbietungsvereintenstaaten von Deutsch-Neu-Negerland , abgeschmissen werden wie in Berlin zum 2 Weltkrieg dann sollte auch ich dies machen können ohne Sprach-Polizisten die meinen och dürfe nicht über die Aktuelle Lage der Flüchtingskriese über Bimbos meine meinung sagen . Und jetzt nochmal für alle die es nicht verstanden haben : Man siehe hier auf dem Foto ich bin die weisse mit Gitarre Links und neben mir eine Bekannte und Ehemalige Schulkameradin von mir schwartz ganz rechts ... Wer will raten wie ich sie heute noch nach ihrem alten Spitznamen aus der Schulzeit der 90er nenne ? Ihr denkt Neger ja aber falsch . Ihr Spitzname LAUTET nicht "NEGER" sondern "NIGGER" sie selbst hat es erlaubt und ich begerüße sie stehts mit Hey Niggerin wie gehts dir !

  • [l] Dietchan 2.0 Effe ## Admin Tue, 31 Mar 2020 22:01:50 GMT Nr. 25920 Geschlossen
    JPG 500×500 88.6k
    Liebe Freunde,

    wir hier bei Dietchan sind für unsere innovativen und disruptiven Produkte bekannt. Deshalb waren wir nicht untätig und haben unsere App für Euch noch dynamischer gestaltet. So kommt Dietchan nun als zeitgemäße Single-Page-App. Alle Inhalte werden on-the-fly nachgeladen – dadurch wird die UX noch leichtgewichtiger und responsiver. Die Benutzeroberfläche wurde komplett überarbeitet. Größere Bedienelemente und abgerundete Ecken lassen das Design viel wärmer erscheinen und Bilder werden nun noch stärker in den Mittelpunkt gestellt – schließlich sagt ein Bild mehr als tausend Worte. Mit diesem Upgrade ist Dietchan ready für das neue Jahrzehnt!

    Bitte hinterlasst Eure Anregungen und Kommentare unter diesem Beitrag und teilt diese Nachricht mit all Euren Freunden.
6 Antworten nicht angezeigt.
  • [l] Felix Wed, 01 Apr 2020 10:23:13 GMT Nr. 25968
    PNG 285×139 11.0k
    PNG 559×332 49.0k
    JPG 2912×4368 1.9M
    Erstaunlich, dass es auch für diesen ganzen Prunk keinen Javascript braucht. OP hat die Worte ganz gut getroffen.

    t. ein Web-Entwickelnder
  • [l] Felix Wed, 01 Apr 2020 16:20:50 GMT Nr. 26033
    JPG 125×120 2.9k
    Großartiges Stilblatt :3
  • [l] Felix Wed, 01 Apr 2020 22:01:34 GMT Nr. 26059
    Es ist jetzt der zweite April, schon über eine Minute!
    Mach den Scheiß mal weg, bitte!

  • [l] Feature Request Felix Fri, 06 Mar 2020 07:14:03 GMT Nr. 23795
    PNG 570×321 280.5k
    Bei /fefe/ sollten die Kommentatoren ein Symbolfoto wählen können, das zum Inhalt paßt. Sonst findet man Fäden nie wieder.
  • [l] Felix Sat, 07 Mar 2020 03:06:31 GMT Nr. 23836
    JPG 584×332 86.7k
    Felix meint, die versammelte Internetzintelligenz bestimmt unter gewissenhafter Abwägung das Bild im OP-Pfosten?
  • [l] Felix Sat, 07 Mar 2020 13:37:49 GMT Nr. 23849
    >>23836

    Mir geht es einfach nur darum, daß man einen CIA-Thread am CIA-Bildchen wiedererkennt und einen Corona-Thread am Coronabildchen. Damit man Threads wiederfindet, weil die Diskussionen hier sehr langsam sind und über Tage gehen und nicht jeder 50 Tabs offenhalten will.
  • [l] Felix Sat, 07 Mar 2020 14:17:12 GMT Nr. 23853
    >>23849
    Tuhe die Fäden, die dich interessieren doch ein Fach buchmarken.
  • [l] Felix Sat, 07 Mar 2020 18:22:55 GMT Nr. 23856
    >>23849
    >2020
    >kein Tab-Messie sein

  • [l] SSD Felix Tue, 14 Jan 2020 18:09:33 GMT Nr. 20886
    PNG 1024×615 647.4k
    Gibt es eigentlich einen Unterschied zwischen M.2 und SATA Modelen von Crucial MX500, was die Geschwindigkeit angeht? Ich sitzte vorm Upgrade und weiß gar nicht welches Ding ich mir kaufen soll. Mainboard hat ein M.2 Port, dem ich nie genutzt habe. Ich hab irgendwie schon Bock auf 1TB SSD, hmmm...
  • [l] Felix Wed, 15 Jan 2020 17:44:23 GMT Nr. 20973
    JPG 320×225 12.2k
    >>20886
    Die Crucial MX500 ist unabhängig von der Bauform eine reine SATA-SSD. Das heißt, sie erscheint als am SATA-Controller angeschlossenes Gerät, das über das AHCI-Protokoll angesprochen wird. Das ist daran ersichtlich, dass sie eine M- und B-Kerbe besitzt. Je nach Platzbedarf kannst du also entweder die Form mit Gehäuse und Peripherie-Kabeln oder die kompakte ohne wählen.
    M.2-SSDs ohne B-Kerbe sind hingegen Modelle mit NVMe (oder in ganz seltenen Fällen SATA-SSDs, die ihren eigenen Controller mitbringen), die direkt am PCIe-Bus angeschlossen (was eine höhere Bandbreite mit sich bringt, die aber für die meisten Anwendungsfälle abseits von hochauflösender Videobearbeitung von geringer Bedeutung ist) und über das NVMHCI-Protokoll angesprochen werden (das wesentlich mehr parallele I/O-Anfragen als das für Festplatten konzipierte AHCI unterstützt und außer bei einzelnen Samsung-Modellen mit Option-ROM nicht im BIOS-Kompatibilitätsmodus bootfähig ist). Deswegen musst du beachten, dass für den M.2-Slot auf dem Mainboard oft PCIe-Lanes reserviert sind, die ansonsten dem SATA-Controller zustehen, und du dich deswegen häufig zwischen M.2 (selbst wenn dort nur eine SATA-SSD verbaut ist) und z. B. den letzten beiden SATA-Anschlüssen entscheiden musst. Ob das zutrifft, ist im Handbuch vermerkt.
  • [l] Felix Mon, 20 Jan 2020 20:21:17 GMT Nr. 21261
    AHCI ist auch schon lahm gegenüber NVMe, weil es eben noch aus Magnetscheibenzeiten stammt.

  • [l] Spezielle Musik Felix Thu, 16 Jan 2020 17:45:30 GMT Nr. 21055
    JPG 1024×768 236.2k
    Heute: Geräuschkunst

    Φελυξ lauschte heuer Radio und es begab sich zur schönen Mittagszeit, dass ein
    Geräuschekünstler angekündigt wurde. Der Kommentator (sie/ihr) bat um Rücksicht
    ob der bevorstehenden „brachialen“ Klänge, woraufhin besagte bald darauf in
    schneller Folge durch den Äther fleuchten. Augenblicklich verfiel das Gehirn,
    seine Nervenstränge walkend, in einen Zustand der tiefen Entspannung. Behende
    fegte es die verschossenen Worthülsen der vergangenen, pseudowissenschaftlichen
    Ideologiegefechte aus seinen Fluren, kratzte -- schon lange überfällig -- vom
    Seierschleim zugesetzte Synapsen aus und stellte sich an, die im Keller
    angesammelten Palaverfässer hinauszuräumen, als just in diesem Moment...

    ...der Moderator wieder anhob, sein Mundwerk zum Aussenden Ungedeihs zu
    verwenden. Die Musik wurde unterbrochen, weil man dem Hörer ja nicht zu viel
    zumuten mochte. Auch nach dem kurzen Zwischenguck mit dem Musikschaffenden
    spielte man freilich in vergrämungsvermeidender Absicht eine völlig andere
    Musik, was jedoch bei Φ. keine Pluspunkte erwarb. Er hat sich heute damit
    abgefunden, dass er „seine“ Musik nie im Radio hören wird.

    Was hört Felix sonst so, was nicht im Radio läuft?


[0] [1] [2] [3] [4] [5] [6]
[c] [test] [fefe]