-
Notifications
You must be signed in to change notification settings - Fork 18
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
Ipcl v2.0.0 #29
Merged
Merged
Ipcl v2.0.0 #29
Conversation
This file contains 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
* Fix google test/benchmark pthread missiong issue * Code clean: remove useless function declaration
Update multiple instance/device performance features
* Added IPCL_DEBUG_DISABLE_AVX512IFMA flag for benchmark purposes * Revised benchmark inputs init values * Moved avx512ifma detection to root CMakeLists
…al socket system.
Update and fixes to multiple instances/devices enablement
…tMultiplyPtArray cases (#71)
* Rename file names and class names(remove paillier_ prefix) (#54) * Rename file names(remove paillier_ prefix) * Rename class names(remove the Paillier prefix) * Renamed key_gen to keygen Co-authored-by: Sejun Kim <sejun.kim@intel.com> * Refactoring applied (#55) * Initial QAT integration work with debug traces. * Return output/results from HE_QAT_bnModExp. * Fix correctness bug (partial fix: 8 out of 10/perf degradation). * Change to latest updated he_qat tag. * [QAT] Fix data conversion for errors exposed by CtMultiplyZeroPtTest and CtMultiplyPtArrayTest. * Update heqat.cmake to pull from latest development branch. * Remove debug traces. * Enable single input QAT ModExp interface. * Fix data conversion in BigNumber::toBin. * Add single input interface for QAT ModExp and usage of BigNumber::toBin(). * Pre-commit fix. * Pre-commit and clang-format fixes. * Clean out timing code. * Updating instructions to compile with QAT support. * Update README.md * Minor updates - Switched to git ssh for heqat repo - Automatically disables IPCL_ENABLE_OMP if IPCL_ENABLE_QAT Co-authored-by: Pengfei Zhao <pengfei.zhao@intel.com> Co-authored-by: Sejun Kim <sejun.kim@intel.com>
* update qat branch (#59) * Rename file names and class names(remove paillier_ prefix) (#54) * Rename file names(remove paillier_ prefix) * Rename class names(remove the Paillier prefix) * Renamed key_gen to keygen Co-authored-by: Sejun Kim <sejun.kim@intel.com> (cherry picked from commit 338146f) * Refactoring applied (#55) (cherry picked from commit 0aac79e) Co-authored-by: Sejun Kim <sejun.kim@intel.com> * Initial QAT integration work with debug traces. * Return output/results from HE_QAT_bnModExp. * Fix correctness bug (partial fix: 8 out of 10/perf degradation). * Change to latest updated he_qat tag. * [QAT] Fix data conversion for errors exposed by CtMultiplyZeroPtTest and CtMultiplyPtArrayTest. * Update heqat.cmake to pull from latest development branch. * Remove debug traces. * Enable single input QAT ModExp interface. * Fix data conversion in BigNumber::toBin. * Add single input interface for QAT ModExp and usage of BigNumber::toBin(). * Pre-commit fix. * Pre-commit and clang-format fixes. * Clean out timing code. * Updating instructions to compile with QAT support. * Update README.md * Minor updates - Switched to git ssh for heqat repo - Automatically disables IPCL_ENABLE_OMP if IPCL_ENABLE_QAT Co-authored-by: Pengfei Zhao <pengfei.zhao@intel.com> Co-authored-by: Sejun Kim <sejun.kim@intel.com>
+ Add acquire buffer interface. + Add release buffer interface. + Add bnModExp multi-threaded interface. + Add function to complete the request pulling mechanism from outstanding buffers. + Use the new outstanding buffer type.
*Major updates: - Add BaseText PlainText CipherText classes - Rewrite encrypt/decrypt function with PlainText/CipherText - Rewrite all unit tests with PlainText/CipherText - Rewrite all benchmarks with PlainText/CipherText - Remove old EncryptedNumber class and ops.hpp/cpp file - Add support for encryption and decryption of arbitrary length vectors - Add support for CT+CT CT+PT CT*PT of arbitrary length vector - Add support for CT+scalar(CT/PT) and CT*scalar(PT) - Enable OpenMP in ippModExp * Minor updates and Bug fixes: - Fix decryptRAW incorrect result issue when OMP is enabled - Fix zero padding error when using ippMBModExp - Extend all unit test and benchmark to support arbitrary length BigNumber vector - Updated encrypt function, removed encryptMB/SB and replaced with raw_encrypt - Removed ipcl:: namespace from BigNumber (easier work with QAT data exchange) - Fixed non avx512ifma modexp error Co-authored-by: Sejun Kim <sejun.kim@intel.com>
Added feature where if ```IPCL_DETECT_CPU_RUNTIME=ON```, the library will use built-in ```/proc/cpuinfo``` parser to acquire cpu details runtime, otherwise use info gathered during CMake configure time * Added cpu_parser feature * Added ```IPCL_THREAD_COUNT``` maximum number of threads checker when explicitly set * Minor typo fixes
* Refactor CI/CD process
* Add feature to use pre-installed IPP-Crypto * Add ext_cereal dependency to avoid occasional compile error
* Replace IPCL_IPPCRYPTO_PATH with CMAKE_PREFIX_PATH - Looks for installed IPP-Crypto on system with default locations at ${HOME}/intel and /opt/intel/ipp-crypto - Replace /opt/intel/ipp-crypto with /opt/intel
* Major updates - pubkey, privkey: Refactor pubkey & privkey with shared_ptr and remove pubkey from privkey - Ciphertext: Support shared_ptr public key - keypair: refactor KeyPair structure - Add serialization support for BigNumber and PublicKey (PrivateKey and CipherText WIP) - Add GNU version check for "deprecated-copy" flag - address #40 * Minor Updates - unittest, benchmark, examples: Updated with smart ptr version pk, sk and keypair - Updated example/README markdown to reflect changes to ipcl::KeyPair and its members. - Minor typo fixes Signed-off-by: Zhao Pengfei <pengfei.zhao@intel.com> Co-authored-by: skmono <sejun.kim@intel.com>
skmono
temporarily deployed
to
intel_workflow
December 22, 2022 14:10 — with
GitHub Actions
Inactive
skmono
temporarily deployed
to
intel_workflow
December 22, 2022 14:10 — with
GitHub Actions
Inactive
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.
No description provided.