Clément Grégoire @lectem.bsky.social · 22/09/2026Me trying Linux again this year. "disable secure boot" "use manual partinionning" "installer crashed" Year of Linux desktop my ass 030
Clément Grégoire @lectem.bsky.social · 06/05/2026Given how bad and slow Opus results are lately, I wouldn't be surprised if @anthropic.com pulled the old mechanical turk trick on us and hired an army of Indian devs to prompt smaller models to save on costs. 000
Clément Grégoire @lectem.bsky.social · 20/03/2026I keep seeing `if(file_exists(path)) do_something(path)` and similar. This infuriates me. STOP FUCKING DOING 2 SYSCALLS THIS IS BOTH SLOW AND NON ATOMIC. FFS please... I've even seen it in teaching materials, do everyone a favor and read en.wikipedia.org/wiki/Time-of...en.wikipedia.orgTime-of-check to time-of-use - Wikipedia 130
Clément Grégoire @lectem.bsky.social · 17/03/2026Oh mah! Look, spinlocks are at it again (this time in the kernel, there's no escape!) 120
Clément Grégoire @lectem.bsky.social · 30/01/2026Dear frontend developers: Stop fucking using buttons instead of links! I want to be able to copy, open in new tab,... Well, have links be links and not buttons. Thanks. 010
Clément Grégoire @lectem.bsky.social · 27/01/2026Ever wrote spin-locks or had to debug them? I have, and I got tired of seeing (and writing) crappy ones, so I did a real investigation this time. Spoiler: trust your OS. siliceum.com/en/blog/post...siliceum.comSpinning around: Please don't! - siliceumEmbark on a journey about why you should sometimes trust your OS more than yourself. 1239
Clément Grégoire @lectem.bsky.social · 04/01/2026Can we all agree that OpenSSL sucks by requiring perl to build in 2026? I'm not even asking for CMake support, just no stupid dependencies! 010
Clément Grégoire @lectem.bsky.social · 23/12/2025Cup arrived right before Christmas, thanks @matt.godbolt.org 010
Reposted by Clément GrégoireSebastian Aaltonen @sebaaltonen.bsky.social · 16/12/2025My "No Graphics API" blog post is live! Please repost :) www.sebastianaaltonen.com/blog/no-grap... I spend 1.5 years doing this. Full rewrite last summer and another partial rewrite last month. As Hemingway said: "First draft of everything is always shit".sebastianaaltonen.comNo Graphics API — Sebastian AaltonenGraphics APIs and shader languages have significantly increased in complexity over the past decade. It’s time to start discussing how to strip down the abstractions to simplify development, improve pe... 19475194
Clément Grégoire @lectem.bsky.social · 09/12/2025Today a new episode of "Web sucks"! When handling import of an external library, ESBuild generates some kind of import table for the whole library. But since it needs to mimick ESM modules, it creates the "exports" object using Getters instead of properties. 100
Clément Grégoire @lectem.bsky.social · 08/12/2025Movie you’ve watched more than six times with a gif. Hard mode: no Stars (Wars nor Trek), LOTR, or Marvel, Disney Animated or Pixar.media.tenor.coma man is petting a small black dog in his arms .ALT: a man is petting a small black dog in his arms . 020
Clément Grégoire @lectem.bsky.social · 13/10/2025So UE5 has a tool that generates perf reports, with a whole Metadata generation thing (in XML) that allows to customize reports. But it still displays averages for timings everywhere. Oh, and their perf bench tool is implemented using 3layers of different technologies. 110
Clément Grégoire @lectem.bsky.social · 23/09/2025Finally took the time to buy a licence for Fork. Truly the best UI for git, as it's the only one that never disappointed me. It's only missing Linux support but otherwise well worth its price. @fork_dev@mastodon.social 000
Clément Grégoire @lectem.bsky.social · 07/08/2025New blog post about my journey into the ETW depths, I had long wanted to look into it, now I'm starting to regret it (just a bit). But this is great if you want to write your own tools for profiling! www.siliceum.com/en/blog/post...siliceum.comETW Events and thread names - siliceumThread names are one of the most crucial information one can get system activity. However Windows ETW does not make it easy to retrieve! 021
Clément Grégoire @lectem.bsky.social · 11/07/2025@openvibe.social the app is really great except for one thing killing the experience for me on android: No way to copy a link or open it on your browser because you hide the webview toolbar! 120
Clément Grégoire @lectem.bsky.social · 26/06/2025While writing test code for an article on sampling profilers, I ended up in analyzing methods for high resolution sleeps on Windows. Follow me into the rabbit-hole of high resolution timers! www.siliceum.com/en/blog/post...siliceum.comWindows and high resolution timers - siliceumWhile writing test code for an article on sampling profilers, I ended up in analyzing methods for high resolution sleeps on Windows. Follow me into the rabbit-hole of high resolution thread sleeps and... 194
Clément Grégoire @lectem.bsky.social · 12/06/2025Visiting Nvidia GTC today, if you're there let's meet! #GTCParis 020
Clément Grégoire @lectem.bsky.social · 03/06/2025Tracy 0.12 was just released with thread wake-up visualization, added by yours truly! Check it out github.com/wolfpld/trac...github.comRelease Tracy Profiler 0.12 · wolfpld/tracyFor a more detailed change list, see https://github.com/wolfpld/tracy/blob/v0.12.0/NEWS. CPU topology includes die To enable better insight into potential performance pitfalls the profiler will now... 060
Clément Grégoire @lectem.bsky.social · 27/05/2025Just discovered @ap.brid.gy that let's you interact with Mastodon users! But it requires people from there to enable it too so... A bit limited? 000
Clément Grégoire @lectem.bsky.social · 13/05/2025Implemented a simple String Interning class for a client last week. Physical memory usage: Before: 1.9GB After: 1.5GB Using a preloaded cache: 1.3GB I might be on to something here... 100
Reposted by Clément GrégoireArseny Kapoulkine @zeux.io · 04/05/2025New blog post! "Load store conflicts", in which we look at some performance sensitive code that has surprisingly dramatic performance swings based on the compiler and the microarchitecture used. Reposts appreciated! zeux.io/2025/05/03/l...zeux.ioLoad-store conflictsmeshoptimizer implements several geometry compression algorithms that are designed to take advantage of redundancies common in mesh data and decompress quickly - targeting many gigabytes per second in... 15923
Clément Grégoire @lectem.bsky.social · 22/04/2025This is the third time I find issues due to codebases using rpmalloc this year... Spinlocking without any kind of pause/yield is such a bad idea. One of my threads got stuck for 4.5s !!!! At this point, I can only advise to stop using rpmalloc. 120
Clément Grégoire @lectem.bsky.social · 08/04/2025Really @microsoft.com ? 850MB for a godamn photo viewer that is slower and has a worse UX than the one shipped with Windows XP ?! 160
Reposted by Clément GrégoireRitesh Oedayrajsingh Varma @rovarma.bsky.social · 04/04/2025One thing people really like about Superluminal is that it Just Works, and we’re trying hard to get that same experience on Linux. But this platform sometimes really feels like it’s actively fighting against anything “just working” and it would really prefer you Do The Work tyvm. 0121
Reposted by Clément GrégoireJendrik Illner @jendrikillner.bsky.social · 01/04/2025Graphics Programming weekly - Issue 385 - March 30th, 2025 www.jendrikillner.com/post/graphic... 05822
Clément Grégoire @lectem.bsky.social · 28/03/2025Following my article from yesterday, this link was shared on the DirectX discord. It's a community ran database of information about GPUs and their features. Pretty awesome and very useful to check compatibility!d3d12infodb.boolka.devD3d12infoDB 290
Clément Grégoire @lectem.bsky.social · 27/03/2025Finally published an article I wrote eons ago about D3D12 descriptors and easy optimisations that you can do. This can save you both CPU time and memory! www.siliceum.com/en/blog/post...siliceum.comOptimizing copy of null descriptors in D3D12 - siliceumDiscover how a few simple tweaks can help save CPU time and memory when using Direct3D12 desciptors. 081
Clément Grégoire @lectem.bsky.social · 12/03/2025I'm always surprised by the fact that the first answer to "we have perf problems" is to change the language. I mean, going native is obvious. But why didn't they start by using a proper profiler with instrumentation is beyond me. 230
Clément Grégoire @lectem.bsky.social · 17/02/2025Lost almost a day due to newer DbgHelp versions suddenly failing to load my .pdb files... Turns out they changed a small check that now requires all sizes to be 8bytes aligned. The intent was clearly to check that alignment of array entries was correct, but it ended up checking the size too... 100
Clément Grégoire @lectem.bsky.social · 13/02/2025I open-sourced a library to help you find race conditions! Great for those of you rewriting containers ( @pagghiu.bsky.social @jeremy.laumon.name ?) or people like me who work on codebases with a lot of people and you suspect things to be racy... Feedback is welcome! github.com/Lectem/BadAc...github.comGitHub - Lectem/BadAccessGuards: Find race conditions at low cost by instrumenting containersFind race conditions at low cost by instrumenting containers - Lectem/BadAccessGuards 392
Clément Grégoire @lectem.bsky.social · 10/02/2025C++ committee : still fighting about serialization Gamedev industry: Uses pdb to do hot reloading (live++), runtime visualisation and perf analysis (D0), runtime memory edit (playerunknownproductions.net/news/run-tim...)playerunknownproductions.netPLAYERUNKNOWN Productions - Run-time memory editing with PDB filesThis blog post describes the use of PDB files to automatically generate type descriptions. 0131
Reposted by Clément GrégoireArmin Ronacher @mitsuhiko.at · 24/01/2025“Celebrated are the minimal dependencies, the humble function that just quietly does the job, the code that doesn't need to be touched for years because it was done right once.” lucumr.pocoo.org/2025/1/24/bu...lucumr.pocoo.orgBuild It YourselfWe need a vibe shift on dependencies in programming. 1811522
Clément Grégoire @lectem.bsky.social · 23/01/2025Whoever said linux API/design is better than Win32 never tried to retrieve stack information for a thread (well, task) given its TID. You may start parsing `/proc/self/task/tid/maps` until you realize per-thread stack info were removed (too slow, obviously since there's no dedicated API). 210
Clément Grégoire @lectem.bsky.social · 19/01/2025Apple platforms support when writing low level code really is a pain. - Requires a MacOS machine to even compile - C docs are pretty much inexistant - pthread_*_np require reading impl to know what is available ("hard" to find but available at least) 110
Reposted by Clément GrégoireBrendan Keogh @brkeogh.bsky.social · 18/01/2025Okay, Matthew Ball's The State of Video Gaming in 2025 is a really monumental achievement and an absolute gold mine of stats that put the current game industry into its economic context. Strongly recommend. www.matthewball.co/all/stateofv...matthewball.coPRESENTATION: The State of Video Gaming in 2025 — MatthewBall.coA (free) 220 page presentation on the past, present and potential future of the video game industry. 415845
Reposted by Clément GrégoireSebastian Schöner @sschoener.bsky.social · 18/01/2025Unity Burst and zero-cost: blog.s-schoener.com/2025-01-18-b...blog.s-schoener.comBurst and zero costHey! You can find me on Mastodon, Bluesky, or Twitter! First of, let me apologize for the title. This is not about “zero cost” abstractions, but the title still holds. To set the scene, note that Unit... 083
Clément Grégoire @lectem.bsky.social · 01/01/2025Yearly reminder that virtual memory is not free, even if it looks like it is. That's true even if you only reserve it and don't commit. Everything has a cost. 000
Clément Grégoire @lectem.bsky.social · 16/12/2024So I was thinking "Let's finish writing this series of CMake articles". And then I saw this: Scary how time flies. 040
Clément Grégoire @lectem.bsky.social · 24/11/2024In languages with garbage collectors you need to watch out for memory usage and special constructs that may be taxing during the GC steps. The more memory is allocated, the more the GC may eat up CPU time you'd need for something else. 110
Clément Grégoire @lectem.bsky.social · 18/11/2024I came to BlueSky out of curiosity but didn't expect to find so many familiar faces (well, avatars/accounts). Including a lot that I didn't see for ages! Kind of liking it. 060