Elektrine
Log in Register
Paige Chat Timeline Gallery Friends Email Drive DNS Private DNS Domains VPN Kairo Nerve
Remote

Alexander Monakov

@amonakov@mastodon.gamedev.place
mastodon 4.7.3
  • Open on mastodon.gamedev.place
293 Followers
198 Following
28 Posts
Joined January 15, 2018
codeberg:
https://codeberg.org/amonakov
Open post
Alexander Monakov @amonakov@mastodon.gamedev.place
· 1w ago
Boosted by @joe@f.duriansoftware.com
Replying to
@joe@f.duriansoftware.com compilers still benefit from human assistance with the transpose: https://godbolt.org/z/MoEsKMxnb
Compiler Explorer - C (armv7-a clang 23.1.0)
godbolt.org

Compiler Explorer - C (armv7-a clang 23.1.0)

typedef unsigned char u8; typedef unsigned int u32; union u { u8 u8[4]; u32 u32; }; void f(long idx[], u32 in[], long stride, u32 out[restrict]) { union u i[] = { {.u32 = in[idx[0]] }, {.u32 = in[idx[1]] }, {.u32 = in[idx[2]] }, {.u32 = in[idx[3]] }, }; union u o[] = { { { i[0].u8[0], i[1].u8[0], i[2].u8[0], i[3].u8[0] } }, { { i[0].u8[1], i[1].u8[1], i[2].u8[1], i[3].u8[1] } }, { { i[0].u8[2], i[1].u8[2], i[2].u8[2], i[3].u8[2] } }, { { i[0].u8[3], i[1].u8[3], i[2].u8[3],

2
0
1
0
Open post
Alexander Monakov @amonakov@mastodon.gamedev.place
· 3mo ago
Replying to
@joe@f.duriansoftware.com in Linux land, they kind of did (and didn't stop there):
2
0
0
0
Open post
Alexander Monakov @amonakov@mastodon.gamedev.place
· 6mo ago
Replying to
@joe one can do many wonderful things with just CSS: https://lyra.horse/ (have you played CSS Puzzle Box? https://suricrasia.online/puzzlebox/ )
lyra.horse

lyra.horse

hi!

6
4
1
0
Open post
Alexander Monakov @amonakov@mastodon.gamedev.place
· 3mo ago
Replying to
@mid_kid@fosstodon.org printf in shell iterates its argument list :) printf '
  • %d
  • \n' $(seq 10)
    1
    1
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 6mo ago
    Replying to
    @pervognsen@mastodon.social @dougall@mastodon.social He also took care of all pending nanoBench bugreports: https://github.com/andreas-abel/nanoBench/issues/33#issuecomment-4151237205
    GitHub

    uops.info Alder Lake-P latency for SHLX · Issue #33 · andreas-abel/nanoBench

    https://uops.info/html-instr/SHLX_R64_R64_R64.html#ADL-P lists SHLX as having 3-cycle latency for both operands. This is in contrast to Intel's docs and InstLatx64's measurements. So what gives? I ...

    3
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @joe@f.duriansoftware.com it piles acorns?
    2
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @lisyarus@mastodon.gamedev.place thanks for sharing this. What do you think about using double precision for intermediates when inputs are in single precision? For example, in your "vector length" example it's much cheaper to cast x, y, z to double instead of dividing by max(x, y, z) (in context of a CPU target, not GPU) — after the cast extreme exponent values do not pose an issue. This is exactly how hypotf in a modern C math library works — it's the double-precision hypot that needs to be fancier than that.
    2
    3
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 6mo ago
    Replying to
    @fatlimey@mastodon.gamedev.place err, not just on any gridline — no three points can belong to one (possibly oblique) straight line the "not on one gridline" problem is not so difficult, because if you take a solution and permute rows/columns arbitrarily, it doesn't change occupancy of grid lines and so still satisfies the restriction
    2
    1
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 4mo ago

    In CSS, is there a crime^Wway to unset max-height if the element was "focused" somehow? I'm looking at collapsing quote blocks in public-inbox. I can do

    .q {
    display: inline-block;
    max-height: 9em;
    overflow-y: auto;
    resize: vertical;
    }
    .q[style*=height] {
    max-height: unset;
    }

    which collapses blocks, and lets me resize them. But if I add

    .q:active {
    max-height: unset;
    }

    that's not useful, because the block is expanded only as long as the mouse button is pressed, and :focus doesn't work.

    1
    1
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 4mo ago
    Replying to
    @joe@f.duriansoftware.com my feed would additionally demand them to be 3D
    1
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago

    Oh, so that's why PC HPET runs at that frequency
    (from https://en.wikipedia.org/wiki/Color_burst)

    en.wikipedia.org
    1
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @never_released@mastodon.social also, "silicon vendors including [...] Mesa"? 🧐
    1
    1
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @wolf480pl@mstdn.io https://mastodon.gamedev.place/@amonakov/112273984112650992
    mastodon.gamedev.place

    Alexander Monakov: "Why is it "the kings are measured with the measur…" - Gamedev Mastodon

    1
    4
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @wolf480pl@mstdn.io it's not a ruling policy if it doesn't include rules for rulering the ruler
    1
    2
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago

    “The way they handled it was heartless.”
    https://time.com/article/2026/04/30/oracle-layoffs-ai-tech-jobs/

    time.com
    1
    6
    1
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @wolf480pl not sure. does not look implausible that they wanted to be more conservative with boost clocks for SIMD/FP workloads for power delivery reasons
    1
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @lisyarus@mastodon.gamedev.place yeah, mixing floats/doubles becomes quite inconvenient in SIMD context, but scalar code in math library functions really benefits from higher intermediate precision/range
    1
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @Doomed_Daniel@mastodon.gamedev.place @zeux@mastodon.gamedev.place @lisyarus@mastodon.gamedev.place as far as I'm aware, C++ standards do not have anything analogous to C's Annex F that would say how the language binds to IEEE 754 / IEC 60559.
    1
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @wolf480pl yeah, not my best code for sure. I've pushed a commit swapping around one if/elif to correct that and match my intention.
    1
    5
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago

    My take on HTML templating: https://codeberg.org/amonakov/fml.py

    (my Python is cringe probably, please be gentle)

    Codeberg.org

    fml.py

    HTML templating with f-strings and yaml

    1
    11
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 19mo ago
    Replying to
    @rygorous @kenshirriff re. first paragraph, I was wondering about that too, and turns out the article explains that better: 8x translates to incrementing the next three-bit group
    3
    6
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @wolf480pl hm but on the other hand instruction mix is not the whole story here it would be for "max watts at fixed frequency" are you keeping an eye at CPU's frequency/voltage? it might be it runs at higher turbo when SIMD/FP units are idle
    0
    3
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 7mo ago
    Replying to
    @harold "use strict" and "use asm" say hello
    0
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @wolf480pl right, sorry about not covering this properly in the readme and the code yet. The intention is that snippets are separated by empty lines or file boundaries. The above is intended to be taken as two snippets, the first invoking :text2 as its last node.
    0
    7
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @wolf480pl like a superpower! :) (also, sorry! I probably should have corrected that before posting here)
    0
    3
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @MasonRemaley@mastodon.gamedev.place I've made a similar presentation-latency demo recently: https://mastodon.gamedev.place/@amonakov/116073617904950047 It is somewhat more well-defined in that it synchronizes against the presentation event reported by the X server, so the presentation latency is properly controlled (never more than one frame, sleep amount controls the in-frame slop). Another idea it showcases is submitting all input-independent rendering before the sleep/poll.
    mastodon.gamedev.place

    Alexander Monakov: "I've made a mouse-position-to-presentation latenc…" - Gamedev Mastodon

    0
    0
    0
    0
    Open post
    Alexander Monakov @amonakov@mastodon.gamedev.place
    · 5mo ago
    Replying to
    @horenmar@mastodon.social seeing how PDF producer seems to be Safari, I'm quite curious about your workflow! can you tell how the slides were made?
    0
    1
    0
    0
    Back
    313k7r1n3
    Elektrine

    Tor hidden service

    elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

    I2P eepsite

    j6b6cyk6gjmepjih7jjadxgxvvf3lzzujljuu2v4biemzpg3naya.b32.i2p

    Platform

    • Email
    • Chat
    • Timeline
    • VPN
    • DNS

    Company

    • About
    • Contact
    • FAQ
    • Lite (no JS)

    Legal

    • Terms of Service
    • Privacy Policy
    • Transparency Report
    • Report Abuse
    • Warrant Canary
    • VPN Policy

    Support

    • support@elektrine.com
    • Report Security Issue
    Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
    © 2026 Elektrine. All rights reserved. Server: 07:22:07 UTC