Skip to content

Blog: 'not a JVM' SIMD/stack-allocation deep dive + syndicate_force override#5269

Open
shai-almog wants to merge 1 commit into
masterfrom
simd-not-pure-java-post
Open

Blog: 'not a JVM' SIMD/stack-allocation deep dive + syndicate_force override#5269
shai-almog wants to merge 1 commit into
masterfrom
simd-not-pure-java-post

Conversation

@shai-almog

Copy link
Copy Markdown
Collaborator

What

An engineering deep-dive blog post (Wed 2026-06-24) plus the small syndication change it needs.

Post: docs/website/content/blog/not-a-jvm-simd-stack-allocation.md"We're Not a JVM, and That's How We Got SIMD and Stack Allocation into Java." Because Codename One compiles bytecode to C instead of running on a JVM, we added aligned arrays, stack allocation (allocaByte), and portable SIMD (Simd / IOSSimd / WindowsSimd / LinuxSimd). It carries real CI benchmark numbers (fused kernels win on x64 + NEON; the Base64 byte-shuffle codec wins on NEON but is deliberately gated to scalar on x86-64 because the /O2 autovectorizer already matches it), two {{< mermaid >}} diagrams, and an honest note that CI's -O1 builds overstate the speedups vs the -O2 releases.

  • Numbers traced to CI runs on master: Windows #27900572303, Mac #27904116497, iOS #27904116502.
  • Hero image generated with the house hero tool (2048×1024).
  • Passes the blog-prose gate (Vale + LanguageTool); added autovectoriz*, speedups?, footguns? to the blog accept-list.

Syndication change

This is a non-Friday deep dive we want to push to DZone + Foojay experimentally. Both are normally Friday-only gated, so I added an opt-in front-matter flag:

syndicate_force: ["dzone", "foojay"]

Honored by _forced_platforms() in queue_browser_syndication.py (used by both _platform_accepts and the prune _task_is_allowed) and inline in FoojayAdapter.accepts. Default behavior is unchanged — a normal Wednesday post without the flag stays gated (verified). The flag does not bypass the MIN_AGE_DAYS = 7 eligibility, so the canonical on codenameone.com still indexes first (SEO).

Note: the blog's lightweight front-matter parser is scalar-only, so the list arrives as a string — _forced_platforms tokenizes it with re.findall to handle either form.

Test plan

  • blog_prose_gate.py (Vale + LanguageTool) passes — no net-new findings.
  • Override verified end-to-end on the real post: dzone + foojay accept it; a plain Wednesday post stays gated.
  • py_compile clean; mermaid shortcodes balanced; hero image 2048×1024.
  • Author to confirm the technical claims (NEON vs SSE2, -O2 behavior, the applyMask iOS regression) before merge.

🤖 Generated with Claude Code

@github-actions

github-actions Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

Blog prose gate

✅ No net-new prose findings introduced by this PR.

@github-actions

Copy link
Copy Markdown
Contributor

Cloudflare Preview

@shai-almog shai-almog force-pushed the simd-not-pure-java-post branch 2 times, most recently from 339c5a7 to fd9ac20 Compare June 22, 2026 01:10
… mermaid loader fix

Wednesday deep dive on adding aligned arrays, stack allocation and portable
SIMD to Java by compiling to C instead of running on a JVM, with real CI
benchmark numbers, an escape-analysis / cold-client-code section, and the
honest 'measure handcrafted SIMD against an -O2 compiler' lesson.

Also hardens the shared mermaid shortcode: the loader is a dynamically-injected
ES module that runs after DOMContentLoaded, so mermaid's startOnLoad listener
never fired; render explicitly with mermaid.run() instead (verified in Chromium
and WebKit). Adds an opt-in syndicate_force front-matter flag so this non-Friday
post can join the DZone/Foojay rotation.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@shai-almog shai-almog force-pushed the simd-not-pure-java-post branch from fd9ac20 to bf2f939 Compare June 22, 2026 01:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant