Why some kernels are in C and others in Assembly?

14 views
Skip to first unread message

Do Po

unread,
Jun 16, 2021, 2:33:40 PM6/16/21
to OpenBLAS-users
Hello,

I was wondering what is the reason for having written some kernels in C with inline assembly (like most x86_64 kernels) and others in full assembly (like arm64 ones). Is there some fundamental reason?

Best,
Dumitru

martin-frbg

unread,
Aug 27, 2021, 4:10:06 AM8/27/21
to OpenBLAS-users
Sorry for the very late reply - no fundamental reason (at least that I know of), just code produced by multiple developers over more than ten years - individual coding styles and preferences for readability, possibly kernels starting out as pure C and later getting only the important parts rewritten in assembly. Some of the more recent additions are now using intrinsics as a middle ground, something that simply was not available in earlier times.
Best,
Martin
Reply all
Reply to author
Forward
0 new messages