Commit Graph
100 Commits
Author SHA1 Message Date
Sergey Shlyapnikov 032ac898e2 [GPU] Apply is_non_decompression_multiply() callback only for compressed models (#21719) 2023-12-18 12:20:20 +00:00
Sergey Shlyapnikov a04d59d779 [GPU] Gemm tiled opt add dynamic padding support (#21640) 2023-12-14 09:38:16 +04:00
Sergey Shlyapnikov 15421001fc [GPU] Add missed override keyword in typed_primitive_onednn_impl struct (#21593) 2023-12-12 14:01:34 +00:00
Sergey Shlyapnikov 8d77a52e81 [GPU] Add callback function for MarkDequantizationSubgraph pass to skip non FC-related subgraphs (#21552) 2023-12-11 08:59:46 +04:00
Sergey Shlyapnikov 0ad0a6bfaa [GPU] Improve fake alignment logic and fix missed zero point value (#21530)
* [GPU] Improve fake alignment logic and fix missed zero point value

* Add tests
2023-12-08 12:20:35 +00:00
Sergey ShlyapnikovandKim, Eddy 152b4dfc0d [GPU] Add SLM support for FC bf tiled kernel (#21435)
* [GPU] Add SLM support for FC bf tiled kernel

* Fix unaligned IFM leftovers processing in case of compressed weights and add decompression scale post op support

* added FullyConnected_bf_tiled::GetUpdateDispatchDataFunc

* updated FullyConnected_bf_tiled::GetUpdateDispatchDataFunc for two types of kernels

---------

Co-authored-by: Kim, Eddy <eddy.kim@intel.com>
2023-12-06 18:18:01 +01:00
Sergey Shlyapnikov 009951d969 [GPU] Allow to set empty tensor for inner network of condition primitive (#21415) 2023-12-01 21:21:21 +00:00
Sergey Shlyapnikov e23704ef5e [GPU] Update FC batch blocking for INT4 weights (#21228) 2023-11-23 13:24:14 +04:00
Sergey Shlyapnikov af34891750 [GPU] Add more flexible check if user's buffer is USM Host and can be reused (for iGPUs only) (#21018) 2023-11-16 09:46:10 +04:00
Sergey Shlyapnikov c360de0f07 [GPU] Optimize Condition operation by better integrating its subnetwork primitives with the main network (#21062)
* [GPU] Optimize Condition operation by better integrating its subnetwork primitives with the main network

* Reuse main network's stream in sub-networks
2023-11-15 08:47:36 +04:00
Sergey Shlyapnikov 306137f86b [GPU] Make ShapePredictor instance unique for each InferRequest instead of the cldnn::network (#21019) 2023-11-13 08:52:07 +04:00
Sergey Shlyapnikov 26cab79988 [GPU] Improve OOOQ synchronization between ShapeOf subgraph's CPU impls and GPU kernels (#20595)
* [GPU] Add ITT counters for primitive inst

* [GPU] Improve OOOQ synchronization between ShapeOf subgraph's CPU impls and GPU kernels
2023-10-24 18:49:41 +04:00
Sergey Shlyapnikov 6c396fac9d [GPU] Deferred events deallocation and tuning for FC bf_tiled kernel (#20519) 2023-10-18 16:28:27 +04:00
Sergey ShlyapnikovandVladimir Paramuzov 6e97b91a77 [GPU] UsmHostTensor implementation (#20518)
Co-authored-by: Vladimir Paramuzov <vladimir.paramuzov@intel.com>
2023-10-18 16:12:15 +04:00
Sergey Shlyapnikov f655d2177d [GPU] Fix scatter_nd_update output paddings handling (#20447) 2023-10-16 13:52:45 +04:00
Sergey Shlyapnikov 146ca36f8f [GPU] Minor debug improvements: add suffix to shape agnostic kernels names and show batch_hash for impl_types::any (#20275) 2023-10-16 13:47:57 +04:00
Sergey Shlyapnikov ec644b9a73 [GPU] Fix device tensors reallocation in case of host user's tensors (#20306) 2023-10-11 10:47:33 +04:00
Sergey Shlyapnikov b9ff53a5a4 [GPU] Fix runtime reorders optimization and add runtime memory dependencies (#20202) 2023-10-04 12:57:02 +04:00
Sergey Shlyapnikov e2501a67d2 [GPU] Fix os_is_yx_osv16_isv4 weights format matching (#20132) 2023-10-02 09:02:10 +04:00
Sergey Shlyapnikov f9678a285c [GPU] Do not use usm_host memory buffers for PVC as a device inputs (#19767) 2023-09-28 13:53:51 +04:00
Sergey Shlyapnikov 886be26c0b [GPU] Add handling of unsupported simd8 for PVC (#20093) 2023-09-28 13:39:41 +04:00
Sergey Shlyapnikov 4eb9c57424 [GPU] Add input feature leftovers processing for fully_connected_gpu_bs_f_bsv16_af8_vload kernel (#19650) 2023-09-07 13:20:11 +04:00
Sergey Shlyapnikov 7df8d1ca2d [GPU] Add per iteration performance profiling mode (#18637) 2023-08-22 12:37:36 +02:00
Sergey Shlyapnikov d13ae31a61 [GPU] Allow to use infinity value as a Pad's fill value (#19201) 2023-08-15 14:31:49 +00:00
Sergey Shlyapnikov 86c4c6785d [GPU] Don't invalidate users after reorder insertion (#19137) 2023-08-14 14:16:54 +04:00
Sergey Shlyapnikov 32a6a31de2 [GPU] Prevent Conv's input data type changing at reorder_inputs pass (#19042) 2023-08-10 10:59:32 +04:00
Sergey Shlyapnikov d91d72c89c [GPU] RandomUniform new shape inference for dynamism support (#19087) 2023-08-10 09:43:08 +04:00
Sergey Shlyapnikov e7565eda3e [GPU] Added paddings processing for dynamic convolutions primitives; enabled convolution osv16 optimized shape agnostic kernel (#19001) 2023-08-08 14:57:54 +02:00
Sergey Shlyapnikov 2bd49cc1f8 [GPU] Add extra flush() command for dynamic models and OOO queue (#18819) 2023-07-27 16:15:37 +04:00
Sergey Shlyapnikov 7f917446c2 [GPU] Force ov::enable_profiling if OV_GPU_DumpProfilingData debug option is used (#18687) 2023-07-26 13:32:30 +04:00
Sergey Shlyapnikov 42237bcbdb [GPU] Optimize update_shape synchronization for OOOQ and prohibit memory reuse for shape_of-subgraph nodes (#18742) 2023-07-24 11:34:19 -07:00
Sergey Shlyapnikov 3958f771da [GPU] Add oneDNN primitives profiling support (#17785)
* [GPU] Add oneDNN primitives profiling support

* [GPU] Add stream.wait() method to prevent caches flushing and other possible impacts of finish() call

* Add comment for wait() usage
2023-07-17 19:17:31 +04:00
Sergey Shlyapnikov b7935bb869 [GPU] Fix data races in RegisterFactory() and LogHelper::LogHelper() functions (#18521) 2023-07-14 09:06:10 +04:00
Sergey Shlyapnikov feab0ab75e [GPU] Memory preallocation optimization (#18181)
* [GPU] Use real layout for cpu impls instead of memory's

* [GPU] Add memory tracking and pre allocation mechanism

* Tests and minor code refactoring

* Apply review comments

* Remove unused include
2023-07-13 07:26:17 +02:00
Sergey Shlyapnikov e631f65a9b [GPU] Fix in-order queue synchronization issue related to OCL/OneDNN impls interaction with CPU impls (#17976) 2023-06-14 10:15:04 +09:00
Sergey Shlyapnikov 70e0caca4f [GPU] Fix dynamic padding processing of static dimension (#17978) 2023-06-12 08:39:42 +04:00
Sergey Shlyapnikov 58d79aa3a6 [GPU] Add shape_of subgraphs markup and initial cpu implementations (#17762)
* [GPU] Add shape of subgraphs markup and initial cpu implementations for some of primitives

* Apply review comments

* Exclude eltwise with boolean mode types from shape of subgraphs and fix leftovers
2023-06-08 13:46:21 +04:00
Sergey Shlyapnikov db8d23231a [GPU] Change priority of CPU implementations (#17829) 2023-06-05 11:21:26 +04:00
Sergey Shlyapnikov 5afbd4cf92 [GPU] Remove clFinish call from USM memory lock function (#17830) 2023-06-02 16:17:05 +04:00
Sergey ShlyapnikovandVladimir Paramuzov 808647dfb3 [GPU] Weights reorders primitive cachcing (#16638)
Co-authored-by: Vladimir Paramuzov <vladimir.paramuzov@intel.com>
2023-05-15 09:57:04 +04:00
Sergey Shlyapnikov 3b8bb1fb17 [GPU] Use BFS processing order for out_of_order queue (#17250) 2023-05-02 15:14:38 +04:00
Sergey Shlyapnikov 0a5975bdfa [GPU] Add real kernels' execution timings collection for DumpProfilingData debug option (#15797) 2023-04-25 14:33:08 +04:00
Sergey Shlyapnikov 997f60f1c3 [GPU] Fix shape_of shape inference optimization (#16863) 2023-04-12 15:44:34 +04:00
Sergey Shlyapnikov 2075dcb7c3 [GPU] Fix Interpolate assert (#16806) 2023-04-10 12:29:01 +04:00
Sergey Shlyapnikov 48dee7c30a [GPU] Fix missed weights params update (#16815) 2023-04-10 10:28:06 +04:00
Sergey Shlyapnikov bb93bfd90f [GPU] Add clDNN shape agnostic kernels usage as an initial impls for dGPU (#16018)
* [GPU] Add clDNN shape agnostic kernels usage as an initial impls for dGPU

* [GPU] Use layout as a key of weights cache, implement logic for weights cache capacity calculation based on available memory
2023-03-31 13:05:59 +04:00
Sergey Shlyapnikov 6c766a81b5 [GPU] Treat warnings C4267 as errors for Windows (#16345) 2023-03-28 22:56:47 +00:00
Sergey Shlyapnikov ce67ac09d3 [GPU] Disable OneDNN primitive cache (#16525) 2023-03-26 23:29:47 +04:00
Sergey Shlyapnikov e434c320f5 [GPU] Update tuning params of shape agnostic version of fully_connected_bf_tiled kernel for dGPUs (#16482) 2023-03-24 09:08:09 +04:00
Sergey Shlyapnikov 7b649c4150 [GPU] Fix reset_execution() method with wait option enabled for in_order queue type (#15562) 2023-02-08 09:18:46 +04:00
Sergey Shlyapnikov e003bf3af7 [GPU] Shape agnostic FC opt tiled kernel (#15396) 2023-02-06 12:17:55 +04:00
Sergey Shlyapnikov cd48d76009 [GPU] Limit legacy fusions usage in Convolution kernels (#15465) 2023-02-06 12:08:22 +04:00
Sergey Shlyapnikov 6c22f06d07 [GPU] Perform memory transfer from usm_host to usm_device for dGPU only (#15263)
* [GPU] Perform memory transfer from usm_host to usm_device only for dGPU

* [GPU] Allocate new memory buffer for biases fusions to avoid original buffer modification since it may be used by other primitives
2023-01-26 10:44:38 +04:00
Sergey Shlyapnikov 19fde3fee6 [GPU] Peak memory usage optimizations (#14799) 2023-01-02 09:51:19 +04:00
Sergey Shlyapnikov 901e7982d6 [GPU] Fix Experimental Detectron ROI Feature Extractor pyramid levels indexing and Experimental Detectron DO in case of class_agnostic_box_regression option (#14700) 2022-12-21 15:11:33 +04:00
Sergey Shlyapnikov f02c663a1d [GPU] Fix eltwise fusions in case of LT_ALIGNED_READ and vec_size>1 (#14275) 2022-12-20 12:13:15 +04:00
Sergey Shlyapnikov 9f481e8eaa [GPU] Fix Pad Primitive shape inference (#14282) 2022-12-13 16:59:55 +04:00
Sergey Shlyapnikov 637f1cdf8f [GPU] Fix lockable memory allocation (#14134)
* [GPU] Fix lockable memory allocation

* Apply review comments

* [GPU] Replace usm handle sharing with independent blob creation

* Prohibit all other remote blob types

* [GPU] Fix for nullptr impl
2022-11-25 12:07:47 +04:00
Sergey Shlyapnikov 06cfa2abc4 [GPU] Support of surface input reordering to buffer (#13223)
* [GPU] Add surface input reordering

* [GPU] Add batched nv12->bfyx conversion reorder fusion
2022-11-24 16:20:38 +04:00
Sergey Shlyapnikov d464d079b2 [GPU] Add blocking option for cldnn::memory::copy_*() functions (#14012) 2022-11-24 10:37:11 +04:00
Sergey Shlyapnikov be277ab977 [GPU] Move device memory allocation from preprocessing stage to runtime for usm memory type (#13697)
* [GPU] Move device memory allocation from preprocessing stage to runtime to fix incorrect behaviour in case of tensor swapping

* [GPU] Apply review comments

* Replace source of dynamic layout cheking
2022-11-17 21:49:28 +03:00
Sergey Shlyapnikov a1b496e051 [GPU] Default context for each device (#13658)
* [GPU] Add default context for each device

* [GPU] Replace operator== overloading with independent function
2022-11-02 11:04:56 +04:00
Sergey Shlyapnikov 6c6b3666a4 [GPU] Add additional condition for VA surface buffers detection (#13691) 2022-10-28 18:19:02 +03:00
Sergey Shlyapnikov 5fea4c3fc3 [GPU] Convert activation's slope buffer data type for OneDNN fusions (#13444) 2022-10-14 13:58:35 +04:00
Sergey Shlyapnikov 0b8f1f8c00 [GPU] Optimize reorder between permute and first convolution (#13459) 2022-10-14 13:57:58 +04:00
Sergey Shlyapnikov bdffe5a054 [GPU] Fix reshape shape calculation for MatMul operation (#13312) 2022-10-04 11:15:07 +04:00
Sergey Shlyapnikov 33cda223a5 [GPU] Fix performance regression caused by surfaces_lock::create() function move (#13124) 2022-09-22 10:06:09 +04:00
Sergey Shlyapnikov 2fc59bf3d2 [GPU] GPU Plugin OVInferRequestIOTensorTest and SqueezeUnsqueezeLayerTest tests fixes (#12830) 2022-09-01 09:04:27 +04:00
Sergey Shlyapnikov 30b872150a [GPU] Fix Interpolate axes values alignment with scales (#12634) 2022-08-25 09:39:30 +04:00
Sergey Shlyapnikov bf2ae06f29 [GPU] Shared memory optimization for network::execute_impl() call (#12631) 2022-08-24 19:11:21 +04:00
Sergey Shlyapnikov 7d2c88b296 Fix path for find_package of ITT counters in case of defined INTEL_VTUNE_DIR variable (#12584) 2022-08-16 16:45:29 +04:00
Sergey Shlyapnikov d8237cd97c [GPU] Align Reduce primitive with nGraph's parameters (#12341) 2022-08-16 13:53:26 +04:00
Sergey Shlyapnikov a711ae87a5 [GPU] Align Interpolate primitive with nGraph's parameters (#12342)
* [GPU] Align Interpolate primitive with nGraph's parameters
2022-08-16 13:52:46 +04:00
Sergey Shlyapnikov 79e3272237 [GPU] Update eltwise calc_output_layout function and prevent output layouts invalidation after adding reorders for weights (#11073) 2022-03-31 13:15:47 +03:00
Sergey Shlyapnikov f2af1ef88a [GPU] Update memory location to __local in GPU Detection Output (#11209)
* [GPU] Update memory location to __local in GPU Detection Output

* Replace hardcoded stack size with JIT constant
2022-03-31 13:13:58 +03:00
Sergey Shlyapnikov 24a74672f6 [GPU] Fix remote blobs tests (#11349) 2022-03-31 09:04:46 +03:00
Sergey Shlyapnikov 5dc3da926c [GPU] Add fusion through feature (#9674)
* [GPU] Add fuse through feature

* Apply review comments


Tasks marked as not passed:
* https://dev.azure.com/openvinoci/dldt/_build/results?buildId=313769&view=results
* https://dev.azure.com/openvinoci/dldt/_build/results?buildId=313766&view=results
2022-03-30 16:43:32 +03:00
Sergey Shlyapnikov cd703580b6 [GPU] Host time optimizations for in order queue (#11255)
* [GPU] Host time optimizations

* Fix failed fusings_gpu/permute_eltwise_loop.basic/* tests
2022-03-30 10:53:53 +03:00
Sergey Shlyapnikov 782ef6b42e [GPU] Add estimation of required memory for CAFFE_OPT_2 stage of GPU Detection Output (#11001) 2022-03-21 12:06:07 +03:00
Sergey Shlyapnikov 6c6aa8fa95 [GPU] Fix RemoteBlob lock() and ulock() behaviour in case of multiple threads (#10685)
* [GPU] Fix RemoteBlob lock() and ulock() behaviour in case of multiple threads and add tests
2022-03-01 15:15:04 +03:00
Sergey Shlyapnikov e906b3581f [GPU] Replace handle_permute optimization pass with proper Reorder adding instead of Permute primitive (#10569) 2022-02-24 16:41:43 +03:00
Sergey ShlyapnikovandMaxim Shevtsov 03566b4e4d [GPU] Fix outputs blobs allocation for U16/I16 data types (#10180)
* [GPU] Fix outputs blobs allocation for U16/I16 data types

* [GPU] Add U32, U64, FP64 data types support; add information about legacy fused activations to .info file

* Update auto_batch.cpp

fixed u64 inputs for the auto-batching

Co-authored-by: Maxim Shevtsov <maxim.y.shevtsov@intel.com>
2022-02-11 14:08:36 +03:00
Sergey Shlyapnikov bc21e52912 [GPU] Fix FC 3D input size propagation and bias fusion (#10249) 2022-02-10 16:16:12 +03:00
Sergey Shlyapnikov 8f0e974ee6 [GPU] Add new properties and fix bechmark_app (#10149) 2022-02-09 09:18:54 +03:00
Sergey Shlyapnikov ccf4f4e420 [GPU] Update config api 2.0 (#9649) 2022-02-03 13:04:36 +03:00
Sergey Shlyapnikov 0af8916d1d [GPU] Fix dependencies list in fused primitive descriptor (#9941) 2022-01-27 11:05:20 +03:00
Sergey Shlyapnikov 89868df352 [GPU] Fix eltwise's inputs indexes calculation and order of dimensions (#9778) 2022-01-20 11:15:40 +03:00
Sergey Shlyapnikov 0a225c2d84 [GPU] Fix fusions indexes calculation in b_fs_yx_fsv32 pooling kernel (#9756) 2022-01-19 11:18:53 +03:00
Sergey Shlyapnikov bd12648ec0 [GPU] Fix users invalidation and output layout recalculation in graph dump mode (#9439) 2022-01-13 12:29:43 +03:00
Sergey Shlyapnikov 95d86eb2bf [GPU] Add parallel quantizes optimization (#9370) 2021-12-27 09:47:20 +03:00
Sergey Shlyapnikov 507a498269 [GPU] Add OneDNN post ops description in graph dump mode (#9371) 2021-12-23 09:58:35 +03:00
Sergey Shlyapnikov 71f3e2da10 [GPU] Fix fused ops reshaping for OneDNN FC (#9217) 2021-12-17 13:26:59 +03:00
Sergey Shlyapnikov 2514c0ef38 [GPU] Add gemm_tiled_opt i8/u8 output support (#9202) 2021-12-16 15:20:28 +03:00
Sergey ShlyapnikovandKim,SungEun 1177d2b282 [GPU] Change FQ output for first Convolution (#9200)
* update onednn_gpu

* [GPU] Add bs_fs_yx_bsv8_fsv4 format

Co-authored-by: Kim,SungEun <sungeun.kim@intel.com>
2021-12-15 13:15:13 +03:00
Sergey Shlyapnikov 5817f191c3 [GPU] Fix quantization type detection of GEMM and FC primitives (#9113) 2021-12-10 09:45:15 +03:00
Sergey Shlyapnikov 7002dd4317 [GPU] Add b_fs_yx_fsv32 format support for border primitive and update tuning logic of convolution_b_fs_zyx_fsv16_imad kernel for Gen12HP (#9112) 2021-12-09 18:43:46 +03:00
Sergey Shlyapnikov fa1d9867f2 [GPU] Fix incorrect output result in primitives with two outputs (#8902) 2021-12-01 19:23:38 +03:00
Sergey Shlyapnikov 497aaf9b46 [GPU] Relax batch size limitaions for DO GPU implementation usage for some of Gen12HP dGPUs (#8801) 2021-11-29 11:41:39 +09:00
Sergey Shlyapnikov e76fc14ae1 [GPU] Use b_fs_yx_fsv16 format for OneDNN convolutins in case of FP32 output (#8808) 2021-11-27 15:08:06 +03:00
Sergey Shlyapnikov c10a981f1b [GPU] Do not use OneDNN for FP32 pipeline (#8737) 2021-11-25 10:58:37 +03:00