Skip to content

[CI probe, do not merge] #75 on top of #74 - #76

Closed
lalalune wants to merge 3 commits into
eliza/develop-pin-ea8b3f2from
claude/parakeet-x86-avx2-ci-probe
Closed

lalalune wants to merge 3 commits into
eliza/develop-pin-ea8b3f2from
claude/parakeet-x86-avx2-ci-probe

Conversation

@lalalune

Copy link
Copy Markdown
Member

CI probe only, do not merge. It is #75 merged on top of #74 (misaki CI build fixes) so that GCC, Windows and the Linux x86_64 test-parakeet-kernels run reach the new AVX2 tier; on the base branch the build currently stops at misaki-g2p. I will close it once the results are in.

This PR was prepared with AI assistance (Claude Code).

🤖 Generated with Claude Code

lalalune and others added 3 commits October 14, 2026 03:27
- tagger.cpp used std::all_of without <algorithm>; GCC and the Windows
  clang toolchains reject it. Include <algorithm> in every misaki-g2p
  and parakeet source that uses std::min/std::max/std::all_of.
- GCC ignores [[maybe_unused]] on a non-static data member and
  -Werror=attributes turned that into an error in misaki-internal.h.
  Drop the attribute and reference data_dir_ in the no-espeak path so
  clang's -Wunused-private-field stays quiet.
- lexicon.cpp munmap cast dropped const via a C cast (-Wcast-qual).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
x86_64 only had the scalar tier, which runs the encoder below real time
and leaves ASR on x86_64 Android emulator images unusable.

pk-kernels-avx2.cpp adds decode (PSHUFB nibble lookup), the 8-row tile
(VPMADDWD on int16-widened straight and half-swapped token pairs, the same
scheme as the dotprod tier) and the decoder matvec. Widening to int16 keeps
every int8 product exact, so the tier is bit-identical to scalar for any
input. The file is built with -mavx2 (/arch:AVX2) and entered only after
CPUID AVX2 plus XGETBV YMM state; PK_KERNEL=avx2 / --kernel avx2 force it.

The kernel test now also runs 200 random full-range int8 tile and matvec
cases (including the all -128 corner) against scalar for every tier.
CMake no longer passes the ARM -march flags to an x86_64 build on an
Apple silicon host (CMAKE_OSX_ARCHITECTURES=x86_64).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added documentation Improvements or additions to documentation examples labels Oct 14, 2026
@lalalune

Copy link
Copy Markdown
Member Author

Closing: this was a CI probe for #75, which is now merged (cc45e94). With #74 underneath, every x64 build compiled the AVX2 tier, including MSVC with /arch:AVX2. test-parakeet-kernels passed on ggml-ci x64 high-perf and low-perf and on Windows cpu-x64, openblas-x64 and vulkan-x64. The only test failure was test-kokoro-layer-options, which this change does not touch.

🤖 Generated with Claude Code

@lalalune lalalune closed this Oct 14, 2026
@lalalune
lalalune deleted the claude/parakeet-x86-avx2-ci-probe branch October 14, 2026 08:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation examples

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant