-
Notifications
You must be signed in to change notification settings - Fork 19
Add SVE/SVE2 support for uint8 and int8 data type [MOD-9080] #619
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
GuyAv46
previously approved these changes
Apr 9, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work
dor-forer
previously approved these changes
Apr 9, 2025
GuyAv46
approved these changes
Apr 9, 2025
github-actions bot
pushed a commit
that referenced
this pull request
Apr 9, 2025
* Add arm support * Changed the arm cpu info * Add ip test * Add to tests * Added tests andbm * fix tests * Add github benchmakrs * Check 1 * only arm * change ami * Try ireland * Try different image * try image * back to old image * larger image * Add option to change env * back to default region * Created new image * Try to add the x86 to check * Try different machine * added include * Try without opti on arm * Change to c6g * added matrix region * change to west * try the i8 * Try oregon * Change subnet id * Now subnet * Change subnet * add subnet * Try group id * Change to vpc id * change subnet * Change ami * Try without subnet * add security group again * Change the subnets * Change to ids * Change sg * psubnet * Try different * different * to a file * print * p * leave empty * empty * Try different account * Run 2 arm machines * Move both to us-west-2 * Try workflow * Change name * Changes * Change the secrets * Add supprted arch * Add defaults * Support all * Change the jq * Change machine to t4g * Change the name * Change the machine * fix the stop * only benchamrk * add the secrets * region secret * benchmark region * Change timeout * Added support for arch name in benchamrks * change th json * changed to v9.0 * Change the check * add v9 * Check alt version of armv9 * added check * add arc_arch * changed to CONCAT_WITH_UNDERSCORE_ARCH * change the check * Add full check * fix the instruct * Added the cmake * fix the support * put it back to cmake * back * change the condition * No armpl for now * cland format * remove the opt * Changed to one machine * Added BENCHMARK_ARCH * fix endif * Remove secrets call * pr changes * Changes * change to compile * add sve * add #endif * add armpl * add to cmake * remove armpl * add install * Add ARCH=$(uname -m) * change the path to armpl * suuport check for armv7 * change the armpl * Change or OR * add neon supported for spaces * add sve * add support * align * format * change error * change * Removed the ifdef * Add comments * clang * Change names * format * Try fp32 neon simd * add l2 * add cmake * add SVE * fix sve l2 * PR changes * Change to 1 * fix the l2 * fix format * add desciriopn for chunk == 1 * Change functions * Add include * Change the cast * add resudual * formatting * Move th consexpt * remove template armpl * Back to armpl * back to armpl_neon * include * armnpl * add choose * fix the residual div * raise the residuals values * back to char * Remove prefetch * Revert implemetion chooser * Remove armpl * Revert remove error * Remove comment * Remove empty line * format * Add support macos * add sudo * Add absolute path * find all libs * Change folder * Now set for real * Remove armpl from pull * change the templates * change chunk size to 1 * Back to 4 * Removed the for * Change to 2 sums * SVE L2 * Changed * Add get opt func * Change the var name * format * Pr fixes * PR * SVE IP , SVE2 IP & L2 * UINT8 support, remove int8_ip_sve * format * pr * pr fix * bm_spaces * PR * added conversion * small dim for intel only * Test smallDimChooser only for intel * align offset * align const expression * align cpu features function * format * change to svadd_f32_x where possible * change to _x where possible * move low dim check to intel only * format * fix IP * Optimize, convert on final step * format * chunking * change to inline * format * guy's comments * fix unit_test * format * reinterpet comment * using dot * fix uint8 * SVE2 -> SVE * for mat * fix comments * format :( * illegal --------- Co-authored-by: Dor Forer <dor.forer@redis.com> (cherry picked from commit e644a3d)
Successfully created backport PR for |
github-merge-queue bot
pushed a commit
that referenced
this pull request
Apr 9, 2025
) Add SVE/SVE2 support for uint8 and int8 data type [MOD-9080] (#619) * Add arm support * Changed the arm cpu info * Add ip test * Add to tests * Added tests andbm * fix tests * Add github benchmakrs * Check 1 * only arm * change ami * Try ireland * Try different image * try image * back to old image * larger image * Add option to change env * back to default region * Created new image * Try to add the x86 to check * Try different machine * added include * Try without opti on arm * Change to c6g * added matrix region * change to west * try the i8 * Try oregon * Change subnet id * Now subnet * Change subnet * add subnet * Try group id * Change to vpc id * change subnet * Change ami * Try without subnet * add security group again * Change the subnets * Change to ids * Change sg * psubnet * Try different * different * to a file * print * p * leave empty * empty * Try different account * Run 2 arm machines * Move both to us-west-2 * Try workflow * Change name * Changes * Change the secrets * Add supprted arch * Add defaults * Support all * Change the jq * Change machine to t4g * Change the name * Change the machine * fix the stop * only benchamrk * add the secrets * region secret * benchmark region * Change timeout * Added support for arch name in benchamrks * change th json * changed to v9.0 * Change the check * add v9 * Check alt version of armv9 * added check * add arc_arch * changed to CONCAT_WITH_UNDERSCORE_ARCH * change the check * Add full check * fix the instruct * Added the cmake * fix the support * put it back to cmake * back * change the condition * No armpl for now * cland format * remove the opt * Changed to one machine * Added BENCHMARK_ARCH * fix endif * Remove secrets call * pr changes * Changes * change to compile * add sve * add #endif * add armpl * add to cmake * remove armpl * add install * Add ARCH=$(uname -m) * change the path to armpl * suuport check for armv7 * change the armpl * Change or OR * add neon supported for spaces * add sve * add support * align * format * change error * change * Removed the ifdef * Add comments * clang * Change names * format * Try fp32 neon simd * add l2 * add cmake * add SVE * fix sve l2 * PR changes * Change to 1 * fix the l2 * fix format * add desciriopn for chunk == 1 * Change functions * Add include * Change the cast * add resudual * formatting * Move th consexpt * remove template armpl * Back to armpl * back to armpl_neon * include * armnpl * add choose * fix the residual div * raise the residuals values * back to char * Remove prefetch * Revert implemetion chooser * Remove armpl * Revert remove error * Remove comment * Remove empty line * format * Add support macos * add sudo * Add absolute path * find all libs * Change folder * Now set for real * Remove armpl from pull * change the templates * change chunk size to 1 * Back to 4 * Removed the for * Change to 2 sums * SVE L2 * Changed * Add get opt func * Change the var name * format * Pr fixes * PR * SVE IP , SVE2 IP & L2 * UINT8 support, remove int8_ip_sve * format * pr * pr fix * bm_spaces * PR * added conversion * small dim for intel only * Test smallDimChooser only for intel * align offset * align const expression * align cpu features function * format * change to svadd_f32_x where possible * change to _x where possible * move low dim check to intel only * format * fix IP * Optimize, convert on final step * format * chunking * change to inline * format * guy's comments * fix unit_test * format * reinterpet comment * using dot * fix uint8 * SVE2 -> SVE * for mat * fix comments * format :( * illegal --------- Co-authored-by: Dor Forer <dor.forer@redis.com> (cherry picked from commit e644a3d) Co-authored-by: lerman25 <58445352+lerman25@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR add int8 and uint8 support for SVE & SVE2 ARM cpu flags.
Important note