Skip to content
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

Optimize CPrecisionRecallLayer #533

Merged
merged 1 commit into from
Dec 30, 2021

Conversation

FedyuninV
Copy link
Contributor

Fix #456

Signed-off-by: Valeriy Fedyunin valery.fedyunin@abbyy.com

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
@FedyuninV FedyuninV merged commit 6ebf12a into neoml-lib:master Dec 30, 2021
@FedyuninV FedyuninV deleted the OptimizePrecisionRecall branch December 30, 2021 12:57
yekatkov pushed a commit to yekatkov/neoml that referenced this pull request Jan 27, 2022
Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>
yekatkov added a commit that referenced this pull request Feb 8, 2022
* Fix arguments const-ness in ME convoutions (#508)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Add sample of differential evolution (#512)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix comments in diff evolution sample (#513)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Generate classifiable data in CRandomProblemImpl (#514)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix memory leak LAMB solver test (#516)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix MKL's condition in CCpuMathEngine::VectorPower (#517)

* Fix MKL's condition in CCpuMathEngine::VectorPower

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Fix Linux build

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix CUDA warnings (#518)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Distributed exception (#519)

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* assert if no openmp

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* fix nccl DllLoader

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* fix nccl DllLoader

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* inc cuda build

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

Co-authored-by: Stanislav Angeliuk <59917951+SAngeliuk@users.noreply.github.com>
Co-authored-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix NeoOnnx compilation on some of MSVC compilers (#521)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix warning in Vulkan math engine (Android build) (#522)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Use overflow-safe softplus to CBinaryFocalLossLayer (#523)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix warning in Android build (#524)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Also use __ANDROID__ macro for android detection (#525)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix integer detection in CCpuMathEngine::VectorPower for x86 (#526)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Mark CDnn::DeleteLayerImpl as final (#527)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Remove duplicate Platforms.h (#528)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Remove ternary operator over constant value (#529)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Remove all mentions of GetVector from interfaces (#530)

* Remove all mentions of GetVector from interfaces

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Add missing override

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.29.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Upgrade NeoMLTest version (#531)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Clarify blob dimensions in C++ comments for CFullyConnectedLayer and CBaseConvLayer (#532)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Optimize CPrecisionRecallLayer (#533)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Update IsoDataClustering.cpp (#467)

It is possible to simplify the condition for an equivalent one.

Co-authored-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.30.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix build (#534)

* Fix build

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Fix warning

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.31.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Using alias templates (#535)

* Using alias templates

Signed-off-by: lordnn <lordnn@yahoo.com>

* More aliases

Signed-off-by: lordnn <lordnn@yahoo.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Distributed training (#538)

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* save distributed net

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

Co-authored-by: Stanislav Angeliuk <59917951+SAngeliuk@users.noreply.github.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Properly using of `override` keyword (#537)

* Using alias templates

Signed-off-by: lordnn <lordnn@yahoo.com>

* More aliases

Signed-off-by: lordnn <lordnn@yahoo.com>

* Properly using of `override` keyword

Signed-off-by: lordnn <lordnn@yahoo.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Move to c++14 (#539)

* Move to Android NDK r23

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Allow PackageName_ROOT environment variables for CMake

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Moving to c++14

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Disable link_openmp NeoMathEngineAvx on Darwin

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Fix GCC/Clang compilation with FineObjects

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Java wrapper compilation (#542)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.32.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.33.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.34.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Switch to Android NDK 23 and Gradle 6.1.1 (plugin 4.0.1)  (#543)

* Upgrade gradle to 6.1.1 (plugin 4.0.1)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Upgrade other projects to gradle 6.1.1 (plugin 4.0.1)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Move to NDK 23

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added some const-ness. Use `log1p` if possible. Some cleanup. (#540)

* Using alias templates

Signed-off-by: lordnn <lordnn@yahoo.com>

* More aliases

Signed-off-by: lordnn <lordnn@yahoo.com>

* Properly using of `override` keyword

Signed-off-by: lordnn <lordnn@yahoo.com>

* Added some const-ness. Use `log1p` is possible. Some cleanup.

Signed-off-by: lordnn <lordnn@yahoo.com>

* Revert `log1p` for Metal

Signed-off-by: lordnn <lordnn@yahoo.com>

* Added `explicit` for `CMultiThreadDistributedCommunicator` Ctor

Signed-off-by: lordnn <lordnn@yahoo.com>

* More const-ness. Some variables scope reduced.

Signed-off-by: lordnn <lordnn@yahoo.com>

Co-authored-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Upgrade NeoMLTest version (#544)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 1.0.45.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Copied FastLstm from Lstm

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added fast lstm layer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* CFastLstm MVP (not tested yet)

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* First successful build.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added reverse mode.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm was moved into MathEngine.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added tanh function and LSTM

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added implementation of JIT tanh

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added mutex for function initialization guard.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Code refactoring.
Removed duplicated code.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added Sigmoid and Exp functions.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Big refactoring.
A lot of common codes were moved to template functions.
Xbyak::Generator functions was redefined in order to operate with std::vectors in sequence.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Use initYmmVecRange everywhere.
Insert code of calculation of exponent directly into sigmoid code.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Before debugging Lstm jit function

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm works

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* FastLstm was moved to class CLstmLayer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Moved initialization code of fast ltsm into reshape.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Non-simd fastLstm became multithread.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Comments refactoring.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Copied FastLstm from Lstm

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added fast lstm layer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* CFastLstm MVP (not tested yet)

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* First successful build.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added reverse mode.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm was moved into MathEngine.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added tanh function and LSTM

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added implementation of JIT tanh

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Before debugging Lstm jit function

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Moved initialization code of fast ltsm into reshape.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Non-simd fastLstm became multithread.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Restore right version.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed GPU builds.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed build warning.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix warning in Android build (#524)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 1.0.45.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Copied FastLstm from Lstm

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added fast lstm layer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* CFastLstm MVP (not tested yet)

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* First successful build.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added reverse mode.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm was moved into MathEngine.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added tanh function and LSTM

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added implementation of JIT tanh

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added mutex for function initialization guard.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Code refactoring.
Removed duplicated code.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added Sigmoid and Exp functions.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Big refactoring.
A lot of common codes were moved to template functions.
Xbyak::Generator functions was redefined in order to operate with std::vectors in sequence.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Use initYmmVecRange everywhere.
Insert code of calculation of exponent directly into sigmoid code.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Before debugging Lstm jit function

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm works

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* FastLstm was moved to class CLstmLayer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Moved initialization code of fast ltsm into reshape.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Non-simd fastLstm became multithread.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Comments refactoring.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Copied FastLstm from Lstm

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added fast lstm layer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* CFastLstm MVP (not tested yet)

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* First successful build.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added reverse mode.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm was moved into MathEngine.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added tanh function and LSTM

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added implementation of JIT tanh

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Before debugging Lstm jit function

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Moved initialization code of fast ltsm into reshape.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Non-simd fastLstm became multithread.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Restore right version.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed GPU builds.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed build warning.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed signoff.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed PR. Disable FastLstm for backward and learning

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed PR comments

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Replace OMP functions to nonOMP

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed IOS build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Refactor LstmDesc reallocation

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

Co-authored-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Co-authored-by: valinurovdenis <denis.valinurow@yandex.ru>
Co-authored-by: Stanislav Angeliuk <59917951+SAngeliuk@users.noreply.github.com>
Co-authored-by: BuildTech <BuildTech@abbyy.com>
Co-authored-by: Timur <35902086+TimurIskahov@users.noreply.github.com>
Co-authored-by: lordnn <lordnn@yahoo.com>
nismohl2 pushed a commit to nismohl2/neoml that referenced this pull request Apr 19, 2022
* Fix arguments const-ness in ME convoutions (neoml-lib#508)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Add sample of differential evolution (neoml-lib#512)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix comments in diff evolution sample (neoml-lib#513)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Generate classifiable data in CRandomProblemImpl (neoml-lib#514)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix memory leak LAMB solver test (neoml-lib#516)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix MKL's condition in CCpuMathEngine::VectorPower (neoml-lib#517)

* Fix MKL's condition in CCpuMathEngine::VectorPower

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Fix Linux build

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix CUDA warnings (neoml-lib#518)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Distributed exception (neoml-lib#519)

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed exceptions

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* openmp threads

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* assert if no openmp

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* fix nccl DllLoader

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* fix nccl DllLoader

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* inc cuda build

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

Co-authored-by: Stanislav Angeliuk <59917951+SAngeliuk@users.noreply.github.com>
Co-authored-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix NeoOnnx compilation on some of MSVC compilers (neoml-lib#521)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix warning in Vulkan math engine (Android build) (neoml-lib#522)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Use overflow-safe softplus to CBinaryFocalLossLayer (neoml-lib#523)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix warning in Android build (neoml-lib#524)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Also use __ANDROID__ macro for android detection (neoml-lib#525)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix integer detection in CCpuMathEngine::VectorPower for x86 (neoml-lib#526)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Mark CDnn::DeleteLayerImpl as final (neoml-lib#527)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Remove duplicate Platforms.h (neoml-lib#528)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Remove ternary operator over constant value (neoml-lib#529)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Remove all mentions of GetVector from interfaces (neoml-lib#530)

* Remove all mentions of GetVector from interfaces

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Add missing override

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.29.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Upgrade NeoMLTest version (neoml-lib#531)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Clarify blob dimensions in C++ comments for CFullyConnectedLayer and CBaseConvLayer (neoml-lib#532)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Optimize CPrecisionRecallLayer (neoml-lib#533)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Update IsoDataClustering.cpp (neoml-lib#467)

It is possible to simplify the condition for an equivalent one.

Co-authored-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.30.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix build (neoml-lib#534)

* Fix build

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Fix warning

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.31.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Using alias templates (neoml-lib#535)

* Using alias templates

Signed-off-by: lordnn <lordnn@yahoo.com>

* More aliases

Signed-off-by: lordnn <lordnn@yahoo.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Distributed training (neoml-lib#538)

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* distributed init

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* python wrapper for DistributedTraining

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

* save distributed net

Signed-off-by: Valinurov Denis <denis.valinurow@yandex.ru>

Co-authored-by: Stanislav Angeliuk <59917951+SAngeliuk@users.noreply.github.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Properly using of `override` keyword (neoml-lib#537)

* Using alias templates

Signed-off-by: lordnn <lordnn@yahoo.com>

* More aliases

Signed-off-by: lordnn <lordnn@yahoo.com>

* Properly using of `override` keyword

Signed-off-by: lordnn <lordnn@yahoo.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Move to c++14 (neoml-lib#539)

* Move to Android NDK r23

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Allow PackageName_ROOT environment variables for CMake

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Moving to c++14

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Disable link_openmp NeoMathEngineAvx on Darwin

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Fix GCC/Clang compilation with FineObjects

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Java wrapper compilation (neoml-lib#542)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.32.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.33.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 2.0.34.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Switch to Android NDK 23 and Gradle 6.1.1 (plugin 4.0.1)  (neoml-lib#543)

* Upgrade gradle to 6.1.1 (plugin 4.0.1)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Upgrade other projects to gradle 6.1.1 (plugin 4.0.1)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>

* Move to NDK 23

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added some const-ness. Use `log1p` if possible. Some cleanup. (neoml-lib#540)

* Using alias templates

Signed-off-by: lordnn <lordnn@yahoo.com>

* More aliases

Signed-off-by: lordnn <lordnn@yahoo.com>

* Properly using of `override` keyword

Signed-off-by: lordnn <lordnn@yahoo.com>

* Added some const-ness. Use `log1p` is possible. Some cleanup.

Signed-off-by: lordnn <lordnn@yahoo.com>

* Revert `log1p` for Metal

Signed-off-by: lordnn <lordnn@yahoo.com>

* Added `explicit` for `CMultiThreadDistributedCommunicator` Ctor

Signed-off-by: lordnn <lordnn@yahoo.com>

* More const-ness. Some variables scope reduced.

Signed-off-by: lordnn <lordnn@yahoo.com>

Co-authored-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Upgrade NeoMLTest version (neoml-lib#544)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 1.0.45.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Copied FastLstm from Lstm

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added fast lstm layer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* CFastLstm MVP (not tested yet)

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* First successful build.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added reverse mode.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm was moved into MathEngine.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added tanh function and LSTM

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added implementation of JIT tanh

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added mutex for function initialization guard.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Code refactoring.
Removed duplicated code.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added Sigmoid and Exp functions.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Big refactoring.
A lot of common codes were moved to template functions.
Xbyak::Generator functions was redefined in order to operate with std::vectors in sequence.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Use initYmmVecRange everywhere.
Insert code of calculation of exponent directly into sigmoid code.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Before debugging Lstm jit function

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm works

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* FastLstm was moved to class CLstmLayer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Moved initialization code of fast ltsm into reshape.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Non-simd fastLstm became multithread.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Comments refactoring.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Copied FastLstm from Lstm

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added fast lstm layer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* CFastLstm MVP (not tested yet)

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* First successful build.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added reverse mode.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm was moved into MathEngine.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added tanh function and LSTM

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added implementation of JIT tanh

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Before debugging Lstm jit function

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Moved initialization code of fast ltsm into reshape.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Non-simd fastLstm became multithread.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Restore right version.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed GPU builds.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed build warning.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix warning in Android build (neoml-lib#524)

Signed-off-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Build Framework (NeoML-master 1.0.45.0): Incrementing version number.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Copied FastLstm from Lstm

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added fast lstm layer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* CFastLstm MVP (not tested yet)

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* First successful build.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added reverse mode.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm was moved into MathEngine.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added tanh function and LSTM

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added implementation of JIT tanh

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added mutex for function initialization guard.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Code refactoring.
Removed duplicated code.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added Sigmoid and Exp functions.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Big refactoring.
A lot of common codes were moved to template functions.
Xbyak::Generator functions was redefined in order to operate with std::vectors in sequence.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Use initYmmVecRange everywhere.
Insert code of calculation of exponent directly into sigmoid code.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Before debugging Lstm jit function

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm works

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* FastLstm was moved to class CLstmLayer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Moved initialization code of fast ltsm into reshape.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Non-simd fastLstm became multithread.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Comments refactoring.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Copied FastLstm from Lstm

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added fast lstm layer.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* CFastLstm MVP (not tested yet)

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* First successful build.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added reverse mode.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Lstm was moved into MathEngine.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added tanh function and LSTM

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Added implementation of JIT tanh

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Before debugging Lstm jit function

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Moved initialization code of fast ltsm into reshape.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Non-simd fastLstm became multithread.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed Linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Restore right version.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed GPU builds.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed build warning.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed signoff.

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed PR. Disable FastLstm for backward and learning

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fix linux build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed PR comments

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Replace OMP functions to nonOMP

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Fixed IOS build

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

* Refactor LstmDesc reallocation

Signed-off-by: Yury Katkov <ykatkov@yandex.ru>

Co-authored-by: Valeriy Fedyunin <valery.fedyunin@abbyy.com>
Co-authored-by: valinurovdenis <denis.valinurow@yandex.ru>
Co-authored-by: Stanislav Angeliuk <59917951+SAngeliuk@users.noreply.github.com>
Co-authored-by: BuildTech <BuildTech@abbyy.com>
Co-authored-by: Timur <35902086+TimurIskahov@users.noreply.github.com>
Co-authored-by: lordnn <lordnn@yahoo.com>
Signed-off-by: Michael Zatsepin <michael.zatsepin@abbyy.com>
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.

Speed issue of precision-recall quality control layer
1 participant