Compare commits
572 Commits
releases/2
...
dependabot
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7e25a49cae | ||
|
|
23fae3b1bc | ||
|
|
a28fd2e009 | ||
|
|
6f0db3330a | ||
|
|
c01f50e3ff | ||
|
|
8bc724d160 | ||
|
|
bbddb89171 | ||
|
|
6367206ea8 | ||
|
|
f4b2f950f2 | ||
|
|
59e9f50ec6 | ||
|
|
0a21205ad4 | ||
|
|
4fde957689 | ||
|
|
6a50ea3c74 | ||
|
|
88c8143dd8 | ||
|
|
f094ef81f0 | ||
|
|
de81bbbbc2 | ||
|
|
9faf18b0ff | ||
|
|
1d03b0813b | ||
|
|
27bf494355 | ||
|
|
9f6c3e997f | ||
|
|
7965213014 | ||
|
|
e5a6077877 | ||
|
|
0649865372 | ||
|
|
32b6362076 | ||
|
|
17008c9389 | ||
|
|
5f2045909e | ||
|
|
a04d59d779 | ||
|
|
926a0591ff | ||
|
|
1aa0c0ca0d | ||
|
|
4752237871 | ||
|
|
336a69ec24 | ||
|
|
be7c70c8c4 | ||
|
|
65439eda5d | ||
|
|
1b2eed0bbe | ||
|
|
dcf9247bc8 | ||
|
|
adb4703d82 | ||
|
|
d18d8a457f | ||
|
|
20ad8b43a1 | ||
|
|
2bcc94064f | ||
|
|
3e2037c943 | ||
|
|
ea639a8c48 | ||
|
|
7e88a9d6c8 | ||
|
|
71e7015d39 | ||
|
|
3fb60dc41c | ||
|
|
47939684df | ||
|
|
82cdc116c1 | ||
|
|
e07fe02cb9 | ||
|
|
b7745a1895 | ||
|
|
e2e9d6056f | ||
|
|
9fe38f1a9c | ||
|
|
ef14b50d79 | ||
|
|
34b2b66b69 | ||
|
|
358cd4b709 | ||
|
|
5a4f632680 | ||
|
|
ff8d8a5b16 | ||
|
|
942bc8b1ba | ||
|
|
9ab0a6d2f1 | ||
|
|
5b655d3c50 | ||
|
|
8e52742f86 | ||
|
|
182b44f6cc | ||
|
|
3e42ddbde5 | ||
|
|
a2cc6a036f | ||
|
|
15421001fc | ||
|
|
79ca3d2fb9 | ||
|
|
2f65827f9f | ||
|
|
f7d8bdef46 | ||
|
|
14639d292d | ||
|
|
b31aad78b0 | ||
|
|
2fb683d667 | ||
|
|
42c33ac7b1 | ||
|
|
521da22797 | ||
|
|
e51ba62831 | ||
|
|
0b49bb99d0 | ||
|
|
889f2f54a2 | ||
|
|
cc8aeb0c09 | ||
|
|
e1b9d8c167 | ||
|
|
0f6b9abee8 | ||
|
|
df029eb9c7 | ||
|
|
f3fc503288 | ||
|
|
02dec1c2d9 | ||
|
|
9e2bd77abb | ||
|
|
948fc265b4 | ||
|
|
f49f84a4b1 | ||
|
|
ddb4902c33 | ||
|
|
8e69f2c278 | ||
|
|
402d251483 | ||
|
|
f66c9492d3 | ||
|
|
df7b047de6 | ||
|
|
8d77a52e81 | ||
|
|
8960da9014 | ||
|
|
04c9a52b7f | ||
|
|
06a27e7b31 | ||
|
|
a84d615abd | ||
|
|
ba34fa77e8 | ||
|
|
a3de4c17a1 | ||
|
|
0ad0a6bfaa | ||
|
|
c565bf0c37 | ||
|
|
04db11e921 | ||
|
|
fbec7be5e0 | ||
|
|
89e4cb4252 | ||
|
|
3481568a39 | ||
|
|
8eb26dce6c | ||
|
|
9866bc4d37 | ||
|
|
df2ff92d21 | ||
|
|
4c67ab7381 | ||
|
|
5e3176d617 | ||
|
|
261cf4e4dc | ||
|
|
488abd0ad2 | ||
|
|
2086041552 | ||
|
|
072dcea299 | ||
|
|
68d4ed91ed | ||
|
|
dfc91186a1 | ||
|
|
9cdf1a17ad | ||
|
|
aa69f00e8d | ||
|
|
056282b7ef | ||
|
|
fef3d0d3aa | ||
|
|
aa2dcb1f46 | ||
|
|
dd8f4f3661 | ||
|
|
ec40652cea | ||
|
|
e393678590 | ||
|
|
23424ab73c | ||
|
|
886e0b9f59 | ||
|
|
dde7e70771 | ||
|
|
b71906c672 | ||
|
|
c61de14c66 | ||
|
|
b29a08d15c | ||
|
|
a8a493accf | ||
|
|
8ef3834fe9 | ||
|
|
25e5818645 | ||
|
|
320e2bad57 | ||
|
|
90087dbb48 | ||
|
|
fd0809ead4 | ||
|
|
33b2e6bb51 | ||
|
|
0a7d1d770f | ||
|
|
55d7765704 | ||
|
|
148daf035b | ||
|
|
cac6aadcc8 | ||
|
|
60109caf63 | ||
|
|
152b4dfc0d | ||
|
|
8a0317101c | ||
|
|
275e14d94a | ||
|
|
6391b0c9f6 | ||
|
|
ddc395b6cb | ||
|
|
1f01036997 | ||
|
|
635f5d373d | ||
|
|
e4c38e3afd | ||
|
|
6d3fbf4237 | ||
|
|
bbfe22732f | ||
|
|
d217847714 | ||
|
|
0520216481 | ||
|
|
ea1ffbaf7f | ||
|
|
bd315f4b6a | ||
|
|
65b8bdf892 | ||
|
|
f80793e420 | ||
|
|
791762fb19 | ||
|
|
c18041ab53 | ||
|
|
725aae4dbd | ||
|
|
62f5bd6570 | ||
|
|
a6903b8398 | ||
|
|
24209239bf | ||
|
|
f9d20d5aa0 | ||
|
|
2c6a2a1102 | ||
|
|
9c94873842 | ||
|
|
5dda9f333b | ||
|
|
0d05f87004 | ||
|
|
94d1d7a033 | ||
|
|
ca87784a29 | ||
|
|
fcbb80d372 | ||
|
|
15ff4e6596 | ||
|
|
f37cf22db8 | ||
|
|
525c031959 | ||
|
|
c759f8df86 | ||
|
|
35330d5320 | ||
|
|
9cca05def8 | ||
|
|
e3988cd6a8 | ||
|
|
1e2b7c66f7 | ||
|
|
44f7bf7e3f | ||
|
|
d4c342fc79 | ||
|
|
009951d969 | ||
|
|
0a271c136a | ||
|
|
7d2afa4d38 | ||
|
|
ba735c9149 | ||
|
|
8427493446 | ||
|
|
734bc400ec | ||
|
|
04f2485334 | ||
|
|
ad12f114f4 | ||
|
|
bf760b663e | ||
|
|
0e642e984b | ||
|
|
055e3d274f | ||
|
|
ed0ce165ce | ||
|
|
d1f72e2d01 | ||
|
|
0e2bde2397 | ||
|
|
27adf58220 | ||
|
|
db6aeb7a65 | ||
|
|
9ecebdd202 | ||
|
|
abfbdd1b96 | ||
|
|
7bb542fa70 | ||
|
|
4c40716e95 | ||
|
|
c608771e03 | ||
|
|
3e2c2c06af | ||
|
|
7ff517466c | ||
|
|
c1cfb00f81 | ||
|
|
1e959c7473 | ||
|
|
fa7a4f44b5 | ||
|
|
74bf3d4e38 | ||
|
|
d5d9fd11b3 | ||
|
|
df03b0437a | ||
|
|
6ab5ef72d5 | ||
|
|
b0b28e3853 | ||
|
|
a9d2dd0b02 | ||
|
|
ec239b3d5f | ||
|
|
405d97e4a5 | ||
|
|
718b5a60bf | ||
|
|
243898560f | ||
|
|
51b5bc5ec4 | ||
|
|
8ee8f4e112 | ||
|
|
eec370a88b | ||
|
|
fa1cc89cf3 | ||
|
|
3cae6e7aea | ||
|
|
007b6fd82c | ||
|
|
cb5377fb1d | ||
|
|
b3a13af9ef | ||
|
|
54e61ac9f5 | ||
|
|
a6ea22ad0e | ||
|
|
2b14ea97fc | ||
|
|
97588dc118 | ||
|
|
0ab0d42f2b | ||
|
|
258c72555c | ||
|
|
07bcb8b6ed | ||
|
|
c1a28d0942 | ||
|
|
1b43b3c566 | ||
|
|
d553d4cd55 | ||
|
|
39ba1ed03f | ||
|
|
f3fe6b3f00 | ||
|
|
0aa466e094 | ||
|
|
28208c6c9a | ||
|
|
c6d78def6e | ||
|
|
d3d3ee55ef | ||
|
|
7c590bf180 | ||
|
|
a7de95a8a4 | ||
|
|
42245fc7c3 | ||
|
|
0905c763dd | ||
|
|
409ed190de | ||
|
|
7ab79be0f6 | ||
|
|
76b1861f86 | ||
|
|
f90a4b9d31 | ||
|
|
685ac0d0a1 | ||
|
|
21201833ec | ||
|
|
cf58a83094 | ||
|
|
37bac6ebcd | ||
|
|
be5c755c32 | ||
|
|
c241405c5e | ||
|
|
441427abc8 | ||
|
|
164d101295 | ||
|
|
acecf31642 | ||
|
|
9320fa7c86 | ||
|
|
53baeacc2e | ||
|
|
01b4faf47f | ||
|
|
f84d1c531a | ||
|
|
80feb465f6 | ||
|
|
bc78fd359e | ||
|
|
4804ff8b1e | ||
|
|
0bdd658317 | ||
|
|
d722e42052 | ||
|
|
ca4c276072 | ||
|
|
57d794c810 | ||
|
|
eaa3098920 | ||
|
|
558e713043 | ||
|
|
6dd448d9cc | ||
|
|
b027766b0a | ||
|
|
b02ddc5831 | ||
|
|
45d6aa2171 | ||
|
|
598da6e5c0 | ||
|
|
c50bd2b55f | ||
|
|
1a235ffe79 | ||
|
|
e52f922d35 | ||
|
|
4fdbb2d4e8 | ||
|
|
815980f290 | ||
|
|
ed061d5179 | ||
|
|
6b898fc8d9 | ||
|
|
eaae00c2ca | ||
|
|
a5d53aeaef | ||
|
|
9421f4cf2d | ||
|
|
a6463c1ac6 | ||
|
|
058001eb84 | ||
|
|
72cb4e4820 | ||
|
|
91660b1c05 | ||
|
|
493a338ad2 | ||
|
|
8231d57c38 | ||
|
|
9f87f72ca6 | ||
|
|
965313ba0b | ||
|
|
e087ed083c | ||
|
|
758524978b | ||
|
|
fe6ae4fbdd | ||
|
|
71836a959d | ||
|
|
a8e9989383 | ||
|
|
807b77c38e | ||
|
|
63e7e2dd3e | ||
|
|
65c3c7c20a | ||
|
|
c491381a0d | ||
|
|
44310535ff | ||
|
|
ccfe58cf84 | ||
|
|
b7edd5df69 | ||
|
|
cf0c141e12 | ||
|
|
0ea23ec538 | ||
|
|
0829e8262d | ||
|
|
613e4f5fac | ||
|
|
94de12b19d | ||
|
|
0e08ba1edc | ||
|
|
e23704ef5e | ||
|
|
03d54a579e | ||
|
|
bd7b6b3358 | ||
|
|
9ee5d867d6 | ||
|
|
57425b934f | ||
|
|
823d327476 | ||
|
|
309539667a | ||
|
|
712c5fbd39 | ||
|
|
5bab612ecc | ||
|
|
08fa27762e | ||
|
|
7f5ba4e074 | ||
|
|
a0614c4cb8 | ||
|
|
1a288f0e9a | ||
|
|
97381e0b63 | ||
|
|
d85e6c34a7 | ||
|
|
b66488e4ff | ||
|
|
0137fd7008 | ||
|
|
242336c97f | ||
|
|
bbb06c4f76 | ||
|
|
a329611349 | ||
|
|
eb94c80804 | ||
|
|
d1f71ee233 | ||
|
|
54a68c8a13 | ||
|
|
4237de6bf1 | ||
|
|
aaddfb3a00 | ||
|
|
1fd65ce0f9 | ||
|
|
95accde9df | ||
|
|
90437f7efa | ||
|
|
7150a98d95 | ||
|
|
a530a53eee | ||
|
|
61c5a80fa6 | ||
|
|
a6e4d8fc30 | ||
|
|
6607e5b8c2 | ||
|
|
165f574d8f | ||
|
|
aaa08d013a | ||
|
|
a7edeb53d1 | ||
|
|
5d6d6a2cfe | ||
|
|
d2dcdf86ba | ||
|
|
adbfc53374 | ||
|
|
20af42cfd9 | ||
|
|
570817998d | ||
|
|
0f33a77a27 | ||
|
|
21a90f4e78 | ||
|
|
56301d8878 | ||
|
|
0c041d7ebc | ||
|
|
23462aea6b | ||
|
|
b700040e29 | ||
|
|
d9e04c3b9e | ||
|
|
a5e33f10ff | ||
|
|
2ee8b29f64 | ||
|
|
ffa6e8458d | ||
|
|
af27b6f16a | ||
|
|
ecd1972c24 | ||
|
|
7931938ea4 | ||
|
|
bb773137f1 | ||
|
|
dddc85f68f | ||
|
|
bd5bd56d29 | ||
|
|
e965bea8fe | ||
|
|
ab3452ce59 | ||
|
|
f7f8636fe4 | ||
|
|
43bb86d384 | ||
|
|
5203d3483b | ||
|
|
a61a9be495 | ||
|
|
081f5aad8a | ||
|
|
8181f30a67 | ||
|
|
276153d1ce | ||
|
|
44d56b9dc7 | ||
|
|
a9dffa8d70 | ||
|
|
b2e14f9fad | ||
|
|
71af0eef38 | ||
|
|
d29207e201 | ||
|
|
fa0a6ab9d1 | ||
|
|
c01fdc9276 | ||
|
|
c71ee333f8 | ||
|
|
b380eb06ee | ||
|
|
e4311aae46 | ||
|
|
6bdc1597ed | ||
|
|
8b5b7a627b | ||
|
|
60730f61a4 | ||
|
|
cc463a7757 | ||
|
|
a1416ed68f | ||
|
|
4cf85dbda0 | ||
|
|
819feeb56d | ||
|
|
b6f1ffceca | ||
|
|
908fa51742 | ||
|
|
2a33f35c43 | ||
|
|
d1e1555f2f | ||
|
|
3fbef0d498 | ||
|
|
bed6eeb94b | ||
|
|
2928b6bfed | ||
|
|
fa1ca27576 | ||
|
|
023f6b8682 | ||
|
|
78bbe03ae8 | ||
|
|
aee4865b2f | ||
|
|
315c916ced | ||
|
|
1693ef17f0 | ||
|
|
e72afbec7e | ||
|
|
f78d0950d6 | ||
|
|
4d685194fe | ||
|
|
76459a316f | ||
|
|
83ef7d7ff9 | ||
|
|
af34891750 | ||
|
|
0061d0b286 | ||
|
|
f45dccad15 | ||
|
|
8eb529ceac | ||
|
|
6755a7e3a8 | ||
|
|
7e5f491459 | ||
|
|
eedc8d814c | ||
|
|
4b078f698d | ||
|
|
2c3535355d | ||
|
|
9e7deba8da | ||
|
|
d304be0bd7 | ||
|
|
3558f09c3d | ||
|
|
00d0c0ad0d | ||
|
|
aef989f585 | ||
|
|
79c9f4ad44 | ||
|
|
c7765c91f5 | ||
|
|
66a8600564 | ||
|
|
0180078c70 | ||
|
|
aa1fcbbad1 | ||
|
|
5365bfe0a7 | ||
|
|
534ec2e9ab | ||
|
|
c360de0f07 | ||
|
|
859319e2a5 | ||
|
|
afc599563e | ||
|
|
7c027fe19a | ||
|
|
da2a886477 | ||
|
|
a720b43041 | ||
|
|
369831caef | ||
|
|
5ef7c02bdf | ||
|
|
c974c9a478 | ||
|
|
b43b9f9d50 | ||
|
|
7cb3bf5610 | ||
|
|
bb3ed2d42e | ||
|
|
89494ab412 | ||
|
|
f0c0bf89e2 | ||
|
|
75acdac5f9 | ||
|
|
8b7537a30d | ||
|
|
03a1ba1f81 | ||
|
|
fd403e552a | ||
|
|
75c72157dd | ||
|
|
4563f71ffc | ||
|
|
5dd317c733 | ||
|
|
f97e7f1c9d | ||
|
|
0125c89738 | ||
|
|
03e48f3c17 | ||
|
|
5a04359200 | ||
|
|
e79e5122f8 | ||
|
|
70a2736695 | ||
|
|
7c595f8773 | ||
|
|
6650b8750a | ||
|
|
fb3751717f | ||
|
|
212a9bc852 | ||
|
|
5fa53aa715 | ||
|
|
1a5b0b70f9 | ||
|
|
c451a94572 | ||
|
|
fef0df6ee1 | ||
|
|
306137f86b | ||
|
|
51da30b48d | ||
|
|
c08e01d6d7 | ||
|
|
e446dac727 | ||
|
|
b64d6be8ba | ||
|
|
e8d28f7f6d | ||
|
|
641d3ab351 | ||
|
|
ebf1874eee | ||
|
|
d4dd169ca3 | ||
|
|
51a17ba642 | ||
|
|
8034d1795f | ||
|
|
b1705e8bd3 | ||
|
|
9cc4c25e48 | ||
|
|
09a45bceae | ||
|
|
3c88a9cf58 | ||
|
|
fa22836cfb | ||
|
|
c851d643b3 | ||
|
|
d6852598ce | ||
|
|
000966660c | ||
|
|
6e073b1165 | ||
|
|
4bde741de4 | ||
|
|
bcb38796ce | ||
|
|
8f406067d1 | ||
|
|
319a6584a2 | ||
|
|
854158612f | ||
|
|
f627172e5a | ||
|
|
24cd7283e3 | ||
|
|
9616c8f510 | ||
|
|
c2d09b9a15 | ||
|
|
25d94bd98b | ||
|
|
68e6484ecb | ||
|
|
fdaa4b5d03 | ||
|
|
d07f272054 | ||
|
|
588e96bc37 | ||
|
|
ace986cac0 | ||
|
|
b8eea7bf84 | ||
|
|
6210deba49 | ||
|
|
87cef53088 | ||
|
|
9e7243d67c | ||
|
|
d6cc3d7058 | ||
|
|
0f260c2ccd | ||
|
|
c42a88a190 | ||
|
|
c6ca7865fb | ||
|
|
ac1fb7b955 | ||
|
|
a0849edca1 | ||
|
|
3f7989a817 | ||
|
|
e3d7dffa83 | ||
|
|
95aef4bf51 | ||
|
|
e82283cf85 | ||
|
|
e8b6e17429 | ||
|
|
f17f17acc7 | ||
|
|
368e6bfb8a | ||
|
|
4a0098b26a | ||
|
|
681331d3d7 | ||
|
|
c3948ca799 | ||
|
|
cb53ee5db7 | ||
|
|
c0381ab08d | ||
|
|
cdd342ea49 | ||
|
|
8f30470199 | ||
|
|
e976e7b90c | ||
|
|
dcdf6750a7 | ||
|
|
a304f03852 | ||
|
|
494a9cf9a9 | ||
|
|
5cd9659033 | ||
|
|
64c21fd6f9 | ||
|
|
3036a3d249 | ||
|
|
d0eb27bd3b | ||
|
|
1083b3b58c | ||
|
|
28279013af | ||
|
|
a554611644 | ||
|
|
7d74dac3ee | ||
|
|
ae343a0178 | ||
|
|
47cdbb9df5 | ||
|
|
fda1fd9dc1 | ||
|
|
cc389c23ca | ||
|
|
86c638a595 | ||
|
|
09010657e2 | ||
|
|
1960536e8e | ||
|
|
3386b85c08 | ||
|
|
f890bf7930 | ||
|
|
c20d52dc4f | ||
|
|
0effa37811 | ||
|
|
0955faef93 | ||
|
|
caa81a0b3c | ||
|
|
ff7b49c14d | ||
|
|
8e4c4c3510 | ||
|
|
e8f21eefae | ||
|
|
3f5f923a70 | ||
|
|
f8cd53bb77 | ||
|
|
4e70b3b33b | ||
|
|
4a6e6e64c5 | ||
|
|
3ff85ae70a | ||
|
|
2afb64b9ea | ||
|
|
88c3171742 | ||
|
|
eea49f3c9e | ||
|
|
4084e9acc0 | ||
|
|
e6ff5edc3d | ||
|
|
03f23ae57a | ||
|
|
bb0e4f8ecf | ||
|
|
26c9c41b8e | ||
|
|
703e911321 | ||
|
|
dd10a520e3 | ||
|
|
65f6950f56 | ||
|
|
8eee1b52ed | ||
|
|
8d6f56dd12 | ||
|
|
48c9598892 |
5
.github/ISSUE_TEMPLATE/good_first_issue.yml
vendored
5
.github/ISSUE_TEMPLATE/good_first_issue.yml
vendored
@@ -41,10 +41,7 @@ body:
|
||||
Any materials related to the task, such as operator specifications,
|
||||
discussions, guides.
|
||||
value: |
|
||||
- [What is OpenVINO?](https://github.com/openvinotoolkit/openvino#what-is-openvino-toolkit)
|
||||
- [Contribution guide](https://github.com/openvinotoolkit/openvino/blob/master/CONTRIBUTING.md)
|
||||
- [Blog post on contributing to OpenVINO](https://github.com/openvinotoolkit/openvino/blob/master/CONTRIBUTING.md)
|
||||
- [User documentation](https://docs.openvino.ai/)
|
||||
- [Contribution guide - start here!](https://github.com/openvinotoolkit/openvino/blob/master/CONTRIBUTING.md)
|
||||
validations:
|
||||
required: true
|
||||
|
||||
|
||||
67
.github/actions/setup_python/action.yml
vendored
Normal file
67
.github/actions/setup_python/action.yml
vendored
Normal file
@@ -0,0 +1,67 @@
|
||||
name: 'Setup Python and pip cache'
|
||||
description: 'Setups Python with the provided version and sets up the pip cache'
|
||||
inputs:
|
||||
version:
|
||||
description: 'Python version to install'
|
||||
required: true
|
||||
pip-cache-path:
|
||||
description: 'Path on share where the pip cache is stored'
|
||||
required: false
|
||||
should-setup-pip-paths:
|
||||
description: 'If the action should setup `PIP_CACHE_DIR` & `PIP_INSTALL_PATH` env variables'
|
||||
required: false
|
||||
default: 'false'
|
||||
self-hosted-runner:
|
||||
description: 'If the runner is self-hosted'
|
||||
required: false
|
||||
default: 'true'
|
||||
show-cache-info:
|
||||
description: 'If the action should show the share space occupied by cache'
|
||||
required: false
|
||||
default: 'false'
|
||||
runs:
|
||||
using: 'composite'
|
||||
steps:
|
||||
|
||||
- if: ${{ runner.os == 'Linux' && inputs.self-hosted-runner == 'true' }}
|
||||
name: Install 'actions/setup-python@v4' dependencies
|
||||
shell: bash
|
||||
run: apt-get update && apt-get install -y ca-certificates software-properties-common
|
||||
|
||||
- if: ${{ runner.os == 'Linux' && runner.arch == 'ARM64' }}
|
||||
name: Setup sudo and python3
|
||||
shell: bash
|
||||
run: apt-get update && apt-get install -y sudo python3 # Needed for the deadsnakes action
|
||||
|
||||
- if: ${{ runner.os == 'Linux' && runner.arch == 'ARM64' }}
|
||||
name: Setup Python ${{ inputs.version }}
|
||||
uses: akashchi/deadsnakes-action@f01521a69eee61eaca3a34440bea3ce838317846
|
||||
with:
|
||||
python-version: ${{ inputs.version }}
|
||||
|
||||
- if: ${{ runner.os == 'macOS' || runner.os == 'Windows' || (runner.os == 'Linux' && runner.arch != 'ARM64') }}
|
||||
name: Setup Python ${{ inputs.version }}
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ inputs.version }}
|
||||
env:
|
||||
PIP_CACHE_DIR: ${{ inputs.self-hosted-runner == 'true' && inputs.pip-cache-path || '' }}
|
||||
|
||||
- if: ${{ inputs.should-setup-pip-paths == 'true' }}
|
||||
name: Setup pip variables (cache and install path)
|
||||
shell: bash
|
||||
run: |
|
||||
PIP_VER=$(python3 -c "import pip; print(pip.__version__)")
|
||||
echo "Using pip version: ${PIP_VER}"
|
||||
echo "PIP_CACHE_DIR=${{ inputs.pip-cache-path }}/${PIP_VER}" >> $GITHUB_ENV
|
||||
echo "PIP_INSTALL_PATH=$(python3 -c 'import sysconfig; print(sysconfig.get_paths()["purelib"])')" >> $GITHUB_ENV
|
||||
|
||||
- if: ${{ inputs.show-cache-info == 'true' }}
|
||||
name: Get pip cache info
|
||||
shell: bash
|
||||
run: |
|
||||
echo "Cache size: "
|
||||
du -h -d2 ${{ env.PIP_CACHE_DIR }}
|
||||
echo "Cache info: "
|
||||
python3 -m pip cache info
|
||||
continue-on-error: true
|
||||
99
.github/actions/smart-ci/action.yml
vendored
Normal file
99
.github/actions/smart-ci/action.yml
vendored
Normal file
@@ -0,0 +1,99 @@
|
||||
name: "Smart CI action"
|
||||
description: "Returns product components affected by PR or commit"
|
||||
inputs:
|
||||
repository:
|
||||
description: "GitHub repository"
|
||||
required: true
|
||||
repo_token:
|
||||
description: "Token for access to GitHub repository"
|
||||
required: true
|
||||
pr:
|
||||
description: "GitHub PR number. If not set - commit is used"
|
||||
required: false
|
||||
commit_sha:
|
||||
description: "GitHub commit hash. Used if no PR number is set"
|
||||
required: false
|
||||
component_pattern:
|
||||
description: "Pattern to extract component name from PR label. If not set, any label is considered a component name"
|
||||
required: false
|
||||
labeler_check_name:
|
||||
description: "Name of the labeler check"
|
||||
required: false
|
||||
default: "triage"
|
||||
components_config:
|
||||
description: "Path to components configuration file"
|
||||
required: false
|
||||
default: ".github/components.yml"
|
||||
components_config_schema:
|
||||
description: "Path to the schema file for components configuration"
|
||||
required: false
|
||||
default: ".github/actions/smart-ci/components_schema.yml"
|
||||
labeler_config:
|
||||
description: "Path to labeler configuration file"
|
||||
required: false
|
||||
default: ".github/labeler.yml"
|
||||
skip_when_only_listed_labels_set:
|
||||
description: "Comma-separated list of labels. If PR has only these labels set,
|
||||
return indicator that CI can be skipped"
|
||||
required: false
|
||||
skip_when_only_listed_files_changed:
|
||||
description: "Comma-separated list of patterns (fnmatch-style). If PR has only matching files changed,
|
||||
return indicator that CI can be skipped"
|
||||
required: false
|
||||
|
||||
outputs:
|
||||
all_components:
|
||||
description: "All components listed in configuration"
|
||||
value: ${{ steps.smart_ci.outputs.all_components }}
|
||||
affected_components:
|
||||
description: "Affected components to run validation for and their validation scope"
|
||||
value: ${{ steps.smart_ci.outputs.affected_components }}
|
||||
skip_workflow:
|
||||
description: "Whether the workflow should be run with Smart CI rules applied or skipped completely"
|
||||
value: ${{ steps.smart_ci.outputs.skip_workflow }}
|
||||
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: Wait for labeler to finish
|
||||
uses: lewagon/wait-on-check-action@v1.3.1
|
||||
if: ${{ github.event_name == 'pull_request' }}
|
||||
with:
|
||||
ref: ${{ github.event.pull_request.head.sha }}
|
||||
check-name: ${{ inputs.labeler_check_name }}
|
||||
repo-token: ${{ inputs.repo_token }}
|
||||
wait-interval: 10
|
||||
|
||||
- name: checkout components file
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/components.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
|
||||
- name: Install Python dependencies
|
||||
uses: py-actions/py-dependency-install@v4
|
||||
with:
|
||||
path: "${{ github.action_path }}/requirements.txt"
|
||||
update-setuptools: "false"
|
||||
update-wheel: "false"
|
||||
|
||||
- name: Test functionality
|
||||
run: |
|
||||
python ${{ github.action_path }}/smart_ci_test.py
|
||||
shell: bash
|
||||
|
||||
- name: Smart CI
|
||||
id: smart_ci
|
||||
run: |
|
||||
python ${{ github.action_path }}/smart_ci.py \
|
||||
$([[ -n "${{ inputs.pr }}" ]] && echo '--pr ${{ inputs.pr }}' || echo '-s ${{ inputs.commit_sha }}') \
|
||||
-r ${{ inputs.repository }} \
|
||||
-p "${{ inputs.component_pattern }}" \
|
||||
-c "${{ inputs.components_config }}" \
|
||||
-m "${{ inputs.components_config_schema }}" \
|
||||
-l "${{ inputs.labeler_config }}" \
|
||||
--skip-when-only-listed-labels-set "${{ inputs.skip_when_only_listed_labels_set }}" \
|
||||
--skip-when-only-listed-files-changed "${{ inputs.skip_when_only_listed_files_changed }}"
|
||||
shell: bash
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ inputs.repo_token }}
|
||||
41
.github/actions/smart-ci/components_schema.yml
vendored
Normal file
41
.github/actions/smart-ci/components_schema.yml
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
# YAML schema for Smart CI configuration file components.yml (see https://json-schema.org)
|
||||
|
||||
definitions:
|
||||
component_name:
|
||||
type: string
|
||||
pattern: "^[a-zA-Z_][a-zA-Z0-9_]*$"
|
||||
|
||||
component_data:
|
||||
type: object # dict
|
||||
additionalProperties: false
|
||||
properties:
|
||||
cmake:
|
||||
type: array
|
||||
uniqueItems: true
|
||||
items:
|
||||
'$ref': '#/definitions/component_name'
|
||||
|
||||
revalidate:
|
||||
oneOf:
|
||||
- type: array
|
||||
uniqueItems: true
|
||||
items:
|
||||
'$ref': '#/definitions/component_name'
|
||||
- type: string
|
||||
enum: ['all']
|
||||
|
||||
build:
|
||||
oneOf:
|
||||
- type: array
|
||||
uniqueItems: true
|
||||
items:
|
||||
'$ref': '#/definitions/component_name'
|
||||
- type: string
|
||||
enum: ['all']
|
||||
|
||||
propertyNames: # Validates component names
|
||||
'$ref': '#/definitions/component_name'
|
||||
patternProperties:
|
||||
".*": # Component (name validated via propertyNames)
|
||||
'$ref': '#/definitions/component_data'
|
||||
additionalProperties: false
|
||||
3
.github/actions/smart-ci/requirements.txt
vendored
Normal file
3
.github/actions/smart-ci/requirements.txt
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
ghapi~=1.0.4
|
||||
pyyaml~=6.0.1
|
||||
jsonschema~=4.19.1
|
||||
225
.github/actions/smart-ci/smart_ci.py
vendored
Normal file
225
.github/actions/smart-ci/smart_ci.py
vendored
Normal file
@@ -0,0 +1,225 @@
|
||||
import os
|
||||
import re
|
||||
import argparse
|
||||
import yaml
|
||||
import json
|
||||
import jsonschema
|
||||
import logging
|
||||
from pathlib import Path
|
||||
from ghapi.all import GhApi
|
||||
from fnmatch import fnmatch
|
||||
|
||||
|
||||
class ComponentConfig:
|
||||
FullScope = {'build', 'test'}
|
||||
ScopeKeys = {'build', 'revalidate'}
|
||||
|
||||
def __init__(self, config: dict, schema: dict, all_possible_components: set):
|
||||
self.config = config
|
||||
self.log = logging.getLogger(self.__class__.__name__)
|
||||
self.all_defined_components = set(self.config.keys()) # already defined in components.yml
|
||||
# can be added to components.yml (based on labeler.yml)
|
||||
self.all_possible_components = all_possible_components.union(self.all_defined_components)
|
||||
self.validate(schema)
|
||||
|
||||
def validate(self, schema: dict) -> None:
|
||||
"""Validates syntax of configuration file"""
|
||||
jsonschema.validate(self.config, schema)
|
||||
|
||||
for component_name, data in self.config.items():
|
||||
dependent_components = set()
|
||||
for key in self.ScopeKeys:
|
||||
scope = data.get(key)
|
||||
dependent_components = dependent_components.union(set(scope) if isinstance(scope, list) else set())
|
||||
|
||||
invalid_dependents = dependent_components.difference(self.all_possible_components)
|
||||
if invalid_dependents:
|
||||
error_msg = f"dependent components of {component_name} are invalid: " \
|
||||
f"{invalid_dependents} are not listed in components config: {self.all_possible_components}"
|
||||
raise jsonschema.exceptions.ValidationError(error_msg)
|
||||
|
||||
def get_affected_components(self, changed_components_names: set) -> dict:
|
||||
"""Returns changed components, their dependencies and validation scope for them"""
|
||||
affected_components = dict()
|
||||
|
||||
# If some changed components were not defined in config or no changed components detected at all,
|
||||
# run full scope for everything (just in case)
|
||||
changed_not_defined_components = changed_components_names.difference(self.all_defined_components)
|
||||
if not changed_components_names or changed_not_defined_components:
|
||||
self.log.info(f"Changed components {changed_not_defined_components} are not defined in smart ci config, "
|
||||
"run full scope")
|
||||
affected_components.update({name: self.FullScope for name in self.all_possible_components})
|
||||
return affected_components
|
||||
|
||||
# Else check changed components' dependencies and add them to affected
|
||||
for name in changed_components_names:
|
||||
component_scopes = {k: v for k, v in self.config.get(name, dict()).items() if k in self.ScopeKeys}
|
||||
for key, dependents in component_scopes.items():
|
||||
if dependents == 'all':
|
||||
dependents = self.all_possible_components
|
||||
for dep_name in dependents:
|
||||
affected_components[dep_name] = affected_components.get(dep_name, set())
|
||||
scope = self.FullScope if key == 'revalidate' else {key}
|
||||
affected_components[dep_name] = affected_components[dep_name].union(scope)
|
||||
|
||||
if not component_scopes:
|
||||
self.log.info(f"Changed component '{name}' doesn't have {self.ScopeKeys} keys in components config. "
|
||||
f"Assuming that it affects everything, the whole scope will be started")
|
||||
for dep_name in self.all_possible_components:
|
||||
affected_components[dep_name] = self.FullScope
|
||||
|
||||
# If the component was explicitly changed, run full scope for it
|
||||
affected_components.update({name: self.FullScope for name in changed_components_names})
|
||||
self.log.info(f"Changed components with dependencies: {affected_components}")
|
||||
|
||||
# For non-affected components that are not defined in config - run full scope
|
||||
affected_components.update({name: self.FullScope for name in self.all_possible_components
|
||||
if name not in self.all_defined_components})
|
||||
|
||||
return affected_components
|
||||
|
||||
def get_static_data(self, components_names: set, data_key: str, default: str = None) -> dict:
|
||||
"""Returns requested generic static data defined for each component"""
|
||||
data = {name: self.config[name].get(data_key, default) for name in components_names}
|
||||
return data
|
||||
|
||||
|
||||
def component_name_from_label(label: str, component_pattern: str = None) -> str:
|
||||
"""Extracts component name from label"""
|
||||
component = label
|
||||
if component_pattern:
|
||||
matches = re.findall(component_pattern, label)
|
||||
component = matches[0] if matches else None
|
||||
component = component.replace(' ', '_') if component else None
|
||||
return component
|
||||
|
||||
|
||||
def get_changed_component_names(pr, all_possible_components: set, component_pattern: str = None) -> set:
|
||||
"""Returns component names changed in a given PR"""
|
||||
components = set()
|
||||
for label in pr.labels:
|
||||
component = component_name_from_label(label.name, component_pattern)
|
||||
if component:
|
||||
components.add(component)
|
||||
elif label.name in all_possible_components:
|
||||
# Allow any labels defined explicitly in labeler config as components
|
||||
# (predefined labels, such as "do not merge", are still ignored)
|
||||
components.add(label.name)
|
||||
|
||||
return components
|
||||
|
||||
|
||||
def parse_args():
|
||||
parser = argparse.ArgumentParser(description='Returns product components changed in a given PR or commit')
|
||||
parser.add_argument('--pr', type=int, required=False, help='PR number. If not set, --commit is used')
|
||||
parser.add_argument('-s', '--commit-sha', required=False, help='Commit SHA. If not set, --pr is used')
|
||||
parser.add_argument('-r', '--repo', help='GitHub repository')
|
||||
parser.add_argument('-p', '--pattern', default=None, help='Pattern to extract component name from PR label. '
|
||||
'If not set, any label is considered a component name')
|
||||
parser.add_argument('-c', '--components-config', default='.github/components.yml',
|
||||
help='Path to config file with info about dependencies between components')
|
||||
parser.add_argument('-m', '--components-config-schema', default='.github/actions/smart-ci/components_schema.yml',
|
||||
help='Path to the schema file for components config')
|
||||
parser.add_argument('-l', '--labeler-config', default='.github/labeler.yml',
|
||||
help='Path to PR labeler config file')
|
||||
parser.add_argument('--skip-when-only-listed-labels-set',
|
||||
help="Comma-separated list of labels. If PR has only these labels set, "
|
||||
"return indicator that CI can be skipped")
|
||||
parser.add_argument('--skip-when-only-listed-files-changed',
|
||||
help="Comma-separated list of patterns (fnmatch-style). If PR has only matching files changed, "
|
||||
"return indicator that CI can be skipped")
|
||||
args = parser.parse_args()
|
||||
return args
|
||||
|
||||
|
||||
def init_logger():
|
||||
logging.basicConfig(level=logging.INFO,
|
||||
format='%(asctime)s %(name)-15s %(levelname)-8s %(message)s',
|
||||
datefmt='%m-%d-%Y %H:%M:%S')
|
||||
|
||||
|
||||
def set_github_output(name: str, value: str, github_output_var_name: str = 'GITHUB_OUTPUT'):
|
||||
"""Sets output variable for a GitHub Action"""
|
||||
logger = logging.getLogger(__name__)
|
||||
# In an environment variable "GITHUB_OUTPUT" GHA stores path to a file to write outputs to
|
||||
with open(os.environ.get(github_output_var_name), 'a+') as file:
|
||||
logger.info(f"Add {name}={value} to {github_output_var_name}")
|
||||
print(f'{name}={value}', file=file)
|
||||
|
||||
|
||||
def main():
|
||||
init_logger()
|
||||
logger = logging.getLogger(__name__)
|
||||
args = parse_args()
|
||||
for arg, value in sorted(vars(args).items()):
|
||||
logger.info(f"Argument {arg}: {value}")
|
||||
|
||||
with open(Path(args.components_config), 'r') as config:
|
||||
components_config = yaml.safe_load(config)
|
||||
|
||||
owner, repository = args.repo.split('/')
|
||||
gh_api = GhApi(owner=owner, repo=repository, token=os.getenv("GITHUB_TOKEN"))
|
||||
pr = gh_api.pulls.get(args.pr) if args.pr else None
|
||||
|
||||
with open(Path(args.components_config_schema), 'r') as schema_file:
|
||||
schema = yaml.safe_load(schema_file)
|
||||
|
||||
with open(Path(args.labeler_config), 'r') as labeler_file:
|
||||
labeler_config = yaml.safe_load(labeler_file)
|
||||
|
||||
all_possible_components = set()
|
||||
for label in labeler_config.keys():
|
||||
component_name = component_name_from_label(label, args.pattern)
|
||||
all_possible_components.add(component_name if component_name else label)
|
||||
|
||||
no_match_files_changed = False
|
||||
# For now, we don't want to apply smart ci rules for post-commits
|
||||
is_postcommit = not pr
|
||||
if is_postcommit:
|
||||
logger.info(f"The run is a post-commit run, executing full validation scope for all components")
|
||||
else:
|
||||
no_match_files_changed = 'no-match-files' in [label.name for label in pr.labels]
|
||||
if no_match_files_changed:
|
||||
logger.info(f"There are changed files that don't match any pattern in labeler config, "
|
||||
f"executing full validation scope for all components")
|
||||
|
||||
run_full_scope = is_postcommit or no_match_files_changed
|
||||
|
||||
# In post-commits - validate all components regardless of changeset
|
||||
# In pre-commits - validate only changed components with their dependencies
|
||||
all_defined_components = components_config.keys()
|
||||
changed_component_names = set(all_defined_components) if run_full_scope else \
|
||||
get_changed_component_names(pr, all_possible_components, args.pattern)
|
||||
|
||||
logger.info(f"changed_component_names: {changed_component_names}")
|
||||
|
||||
cfg = ComponentConfig(components_config, schema, all_possible_components)
|
||||
affected_components = cfg.get_affected_components(changed_component_names)
|
||||
|
||||
skip_workflow = False
|
||||
if args.pr and not run_full_scope:
|
||||
if args.skip_when_only_listed_labels_set:
|
||||
excepted_labels = set(args.skip_when_only_listed_labels_set.split(','))
|
||||
excepted_labels_only = changed_component_names - excepted_labels == set()
|
||||
skip_workflow = excepted_labels_only
|
||||
|
||||
if not skip_workflow and args.skip_when_only_listed_files_changed:
|
||||
# To avoid spending extra API requests running step below only if necessary
|
||||
changed_files = gh_api.pulls.list_files(args.pr)
|
||||
patterns = set(args.skip_when_only_listed_files_changed.split(','))
|
||||
|
||||
matched_files_only = all(any(fnmatch(f.filename, pattern) for pattern in patterns) for f in changed_files)
|
||||
logger.debug(f"matched files only: {matched_files_only}")
|
||||
skip_workflow = matched_files_only
|
||||
|
||||
if skip_workflow:
|
||||
logger.info(f"All changes are marked for skip, workflow may be skipped")
|
||||
set_github_output("skip_workflow", str(skip_workflow))
|
||||
|
||||
# Syntactic sugar for easier use in GHA pipeline
|
||||
affected_components_output = {name: {s: True for s in scope} for name, scope in affected_components.items()}
|
||||
set_github_output("affected_components", json.dumps(affected_components_output))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
214
.github/actions/smart-ci/smart_ci_test.py
vendored
Normal file
214
.github/actions/smart-ci/smart_ci_test.py
vendored
Normal file
@@ -0,0 +1,214 @@
|
||||
import logging
|
||||
import sys
|
||||
import unittest
|
||||
from smart_ci import ComponentConfig
|
||||
|
||||
log = logging.getLogger()
|
||||
log.level = logging.DEBUG
|
||||
|
||||
|
||||
def log_handler(func):
|
||||
def wrapper(*args, **kwargs):
|
||||
stream_handler = logging.StreamHandler(sys.stdout)
|
||||
log.addHandler(stream_handler)
|
||||
result = func(*args, **kwargs)
|
||||
log.removeHandler(stream_handler)
|
||||
return result
|
||||
return wrapper
|
||||
|
||||
|
||||
class TestComponentConfig(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.all_possible_components = {'comp1', 'comp2', 'comp3', 'comp4'}
|
||||
ComponentConfig.ScopeKeys = {'build', 'revalidate', '_scope_1', '_scope_2', '_scope_3'}
|
||||
|
||||
@log_handler
|
||||
def validate(self, config_data: dict, changed_components: set, expected_result: dict):
|
||||
log.info(f"{self._testMethodName}:")
|
||||
config = ComponentConfig(config_data, {}, self.all_possible_components)
|
||||
result = config.get_affected_components(changed_components)
|
||||
self.assertEqual(expected_result, result)
|
||||
|
||||
def test_no_changed_components(self):
|
||||
config_data = {
|
||||
'comp1': {'build': {}, 'revalidate': {}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = set()
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': ComponentConfig.FullScope,
|
||||
'comp3': ComponentConfig.FullScope,
|
||||
'comp4': ComponentConfig.FullScope,
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_all_components_changed(self):
|
||||
config_data = {
|
||||
'comp1': {'build': {}, 'revalidate': {}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1', 'comp2', 'comp3', 'comp4'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': ComponentConfig.FullScope,
|
||||
'comp3': ComponentConfig.FullScope,
|
||||
'comp4': ComponentConfig.FullScope,
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_changed_component_not_defined(self):
|
||||
config_data = {
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': ComponentConfig.FullScope,
|
||||
'comp3': ComponentConfig.FullScope,
|
||||
'comp4': ComponentConfig.FullScope,
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_component_changed_no_scope_keys(self):
|
||||
config_data = {
|
||||
'comp1': {},
|
||||
'comp2': {},
|
||||
'comp3': {},
|
||||
'comp4': {},
|
||||
}
|
||||
changed_components = {'comp1'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': ComponentConfig.FullScope,
|
||||
'comp3': ComponentConfig.FullScope,
|
||||
'comp4': ComponentConfig.FullScope,
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_one_component_changed_dependents_empty(self):
|
||||
config_data = {
|
||||
'comp1': {'build': {}, 'revalidate': {}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_not_changed_dependent_component(self):
|
||||
config_data = {
|
||||
'comp1': {'build': {'comp2'}, 'revalidate': {}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': {'build'}
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_changed_dependent_component(self):
|
||||
config_data = {
|
||||
'comp1': {'build': {'comp2'}, 'revalidate': {}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1', 'comp2'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': ComponentConfig.FullScope
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_dependent_component_multiple_parents(self):
|
||||
config_data = {
|
||||
'comp1': {'_scope_1': {'comp2'}, 'revalidate': {}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, '_scope_2': {'comp2'}, '_scope_3': {'comp2'}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1', 'comp3'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': {'_scope_1', '_scope_2', '_scope_3'},
|
||||
'comp3': ComponentConfig.FullScope
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_dependent_component_empty_scopes(self):
|
||||
config_data = {
|
||||
'comp1': {'build': {}, 'revalidate': {'comp2'}},
|
||||
'comp2': {},
|
||||
'comp3': {},
|
||||
'comp4': {},
|
||||
}
|
||||
changed_components = {'comp1', 'comp3'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': ComponentConfig.FullScope,
|
||||
'comp3': ComponentConfig.FullScope,
|
||||
'comp4': ComponentConfig.FullScope
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_changed_component_empty_dependencies(self):
|
||||
config_data = {
|
||||
'comp1': {'build': {}, 'revalidate': {}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_multiple_dependents(self):
|
||||
config_data = {
|
||||
'comp1': {'build': {'comp2'}, 'revalidate': {'comp3'}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {'comp4'}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': {'build'},
|
||||
'comp3': ComponentConfig.FullScope,
|
||||
# We don't consider dependencies of dependencies affected, so comp4 is not expected here
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
def test_all_as_dependents(self):
|
||||
config_data = {
|
||||
'comp1': {'build': 'all', 'revalidate': {}},
|
||||
'comp2': {'build': {}, 'revalidate': {}},
|
||||
'comp3': {'build': {}, 'revalidate': {}},
|
||||
'comp4': {'build': {}, 'revalidate': {}},
|
||||
}
|
||||
changed_components = {'comp1'}
|
||||
expected_result = {
|
||||
'comp1': ComponentConfig.FullScope,
|
||||
'comp2': {'build'},
|
||||
'comp3': {'build'},
|
||||
'comp4': {'build'},
|
||||
}
|
||||
self.validate(config_data, changed_components, expected_result)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main(verbosity=2)
|
||||
236
.github/components.yml
vendored
Normal file
236
.github/components.yml
vendored
Normal file
@@ -0,0 +1,236 @@
|
||||
Core:
|
||||
revalidate: 'all'
|
||||
|
||||
transformations:
|
||||
revalidate: 'all'
|
||||
|
||||
LP_transformations:
|
||||
revalidate:
|
||||
- CPU
|
||||
- GPU
|
||||
- PyTorch_FE
|
||||
- TF_FE
|
||||
- TFL_FE
|
||||
- ONNX_FE
|
||||
- PDPD_FE
|
||||
- POT
|
||||
|
||||
preprocessing:
|
||||
revalidate:
|
||||
- inference
|
||||
- GNA
|
||||
- C_API
|
||||
- Python_API
|
||||
|
||||
inference:
|
||||
revalidate: 'all'
|
||||
|
||||
CPU:
|
||||
revalidate:
|
||||
- C_API
|
||||
- Python_API
|
||||
- samples
|
||||
- ONNX_RT
|
||||
- PyTorch_FE
|
||||
- TF_FE
|
||||
- ONNX_FE
|
||||
build:
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- IR_FE
|
||||
|
||||
GPU:
|
||||
build:
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- IR_FE
|
||||
- PROXY
|
||||
|
||||
GNA:
|
||||
build:
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- IR_FE
|
||||
|
||||
HETERO:
|
||||
revalidate:
|
||||
- CPU
|
||||
- GPU
|
||||
- GNA
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- C_API
|
||||
- Python_API
|
||||
build:
|
||||
- IR_FE
|
||||
|
||||
AUTO_BATCH:
|
||||
revalidate:
|
||||
- CPU
|
||||
- GPU
|
||||
- GNA
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- C_API
|
||||
- Python_API
|
||||
build:
|
||||
- IR_FE
|
||||
|
||||
TEMPLATE:
|
||||
revalidate:
|
||||
- CPU
|
||||
- GPU
|
||||
- GNA
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- AUTO
|
||||
- C_API
|
||||
- Python_API
|
||||
- NVIDIA
|
||||
build:
|
||||
- IR_FE
|
||||
|
||||
AUTO:
|
||||
revalidate:
|
||||
- TEMPLATE
|
||||
- AUTO
|
||||
- C_API
|
||||
- Python_API
|
||||
build:
|
||||
- IR_FE
|
||||
|
||||
PROXY:
|
||||
revalidate:
|
||||
- inference
|
||||
- GPU
|
||||
build: []
|
||||
|
||||
IR_FE:
|
||||
revalidate:
|
||||
- C_API
|
||||
- Python_API
|
||||
- samples
|
||||
build:
|
||||
- CPU
|
||||
|
||||
ONNX_FE:
|
||||
revalidate:
|
||||
- MO
|
||||
build:
|
||||
- CPU
|
||||
- Python_API
|
||||
|
||||
PDPD_FE:
|
||||
revalidate:
|
||||
- MO
|
||||
build:
|
||||
- CPU
|
||||
- Python_API
|
||||
|
||||
TF_FE:
|
||||
revalidate:
|
||||
- MO
|
||||
build:
|
||||
- CPU
|
||||
- Python_API
|
||||
|
||||
TFL_FE:
|
||||
revalidate:
|
||||
- MO
|
||||
build:
|
||||
- CPU
|
||||
- Python_API
|
||||
|
||||
PyTorch_FE:
|
||||
revalidate:
|
||||
- MO
|
||||
build:
|
||||
- CPU
|
||||
- Python_API
|
||||
|
||||
C_API:
|
||||
build:
|
||||
- CPU
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- AUTO
|
||||
- IR_FE
|
||||
|
||||
Python_API:
|
||||
revalidate:
|
||||
- samples
|
||||
- MO
|
||||
- POT
|
||||
- tools
|
||||
build:
|
||||
- CPU
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- AUTO
|
||||
- IR_FE
|
||||
- ONNX_FE
|
||||
- PDPD_FE
|
||||
- TF_FE
|
||||
- TFL_FE
|
||||
- PyTorch_FE
|
||||
|
||||
samples:
|
||||
build:
|
||||
- CPU
|
||||
- AUTO_BATCH
|
||||
- AUTO
|
||||
- IR_FE
|
||||
- C_API
|
||||
- Python_API
|
||||
|
||||
IE_Tests:
|
||||
revalidate:
|
||||
- CPU
|
||||
- GPU
|
||||
- GNA
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- AUTO
|
||||
- NVIDIA
|
||||
build:
|
||||
- IR_FE
|
||||
|
||||
MO:
|
||||
revalidate:
|
||||
- POT
|
||||
build:
|
||||
- Python_API
|
||||
|
||||
POT:
|
||||
build:
|
||||
- CPU
|
||||
- Python_API
|
||||
|
||||
tools:
|
||||
build:
|
||||
- CPU
|
||||
- Python_API
|
||||
|
||||
docs:
|
||||
revalidate: []
|
||||
build: []
|
||||
|
||||
licensing:
|
||||
revalidate: []
|
||||
build: []
|
||||
|
||||
NVIDIA:
|
||||
revalidate: []
|
||||
build: []
|
||||
|
||||
ONNX_RT:
|
||||
revalidate: []
|
||||
build: []
|
||||
39
.github/labeler.yml
vendored
39
.github/labeler.yml
vendored
@@ -48,12 +48,19 @@
|
||||
- 'scripts/**/*'
|
||||
- '.gitmodules'
|
||||
- '**/setup.py'
|
||||
- 'conan.lock'
|
||||
- 'conanfile.txt'
|
||||
- 'vcpkg.json'
|
||||
- any: ['thirdparty/**/*',
|
||||
'!thirdparty/**/CMakeLists.txt']
|
||||
|
||||
'category: docs':
|
||||
- 'docs/**/*'
|
||||
- '**/*.md'
|
||||
- any: ['docs/**/*',
|
||||
'!docs/snippets/**/*']
|
||||
|
||||
'category: docs_snippets':
|
||||
- 'docs/snippets/**/*'
|
||||
|
||||
'category: extensions':
|
||||
- 'src/core/include/openvino/core/extension.hpp'
|
||||
@@ -65,22 +72,22 @@
|
||||
|
||||
'category: GPU':
|
||||
- 'src/plugins/intel_gpu/**/*'
|
||||
- 'src/tests/**/gpu/**/*'
|
||||
- 'thirdparty/ocl/**/*'
|
||||
|
||||
'category: HETERO':
|
||||
- 'src/plugins/hetero/**/*'
|
||||
|
||||
'category: PROXY':
|
||||
- 'src/plugins/proxy/**/*'
|
||||
|
||||
'category: IE Tests':
|
||||
- 'thirdparty/gtest/**/*'
|
||||
- 'src/frontends/tests/frontend/shared/**/*'
|
||||
- any: ['src/tests/**/*',
|
||||
'!src/tests/**/gpu/**/*',
|
||||
'!src/tests/**/inference_engine/**/*']
|
||||
- 'src/tests/**/*'
|
||||
|
||||
'category: inference':
|
||||
- 'src/inference/**/*'
|
||||
- 'src/tests/functional/inference_engine/**/*'
|
||||
- 'src/cmake/**/*'
|
||||
|
||||
'category: IR FE':
|
||||
- 'src/frontends/ir/**/*'
|
||||
@@ -91,10 +98,13 @@
|
||||
'category: MO':
|
||||
- 'tools/mo/**/*'
|
||||
- 'tools/ovc/**/*'
|
||||
- 'tests/layer_tests/mo_python_api_tests/**/*'
|
||||
- 'tests/layer_tests/ovc_python_api_tests/**/*'
|
||||
|
||||
'category: ONNX FE':
|
||||
- 'src/frontends/onnx/**/*'
|
||||
- 'thirdparty/onnx/**/*'
|
||||
- 'tests/layer_tests/onnx_tests/**/*'
|
||||
|
||||
'category: packaging':
|
||||
- 'cmake/**/packaging/**/*'
|
||||
@@ -103,6 +113,7 @@
|
||||
|
||||
'category: PDPD FE':
|
||||
- 'src/frontends/paddle/**/*'
|
||||
- 'tests/layer_tests/py_frontend_tests/test_paddle_frontend.py'
|
||||
|
||||
'category: POT':
|
||||
- 'tools/pot/**/*'
|
||||
@@ -119,6 +130,7 @@
|
||||
- 'thirdparty/gflags/**/*'
|
||||
- 'thirdparty/json/**/*'
|
||||
- 'thirdparty/cnpy/**/*'
|
||||
- 'tests/samples_tests/smoke_tests/**/*'
|
||||
|
||||
'category: TEMPLATE':
|
||||
- 'src/plugins/template/**/*'
|
||||
@@ -127,6 +139,10 @@
|
||||
- 'src/frontends/tensorflow/**/*'
|
||||
- 'src/frontends/tensorflow_common/**/*'
|
||||
- 'tests/layer_tests/tensorflow_tests/**/*'
|
||||
- 'tests/layer_tests/tensorflow2_keras_tests/**/*'
|
||||
- 'tests/layer_tests/jax_tests/**/*'
|
||||
- any: ['tests/model_hub_tests/**',
|
||||
'!tests/model_hub_tests/torch_tests/**/*']
|
||||
|
||||
'category: TFL FE':
|
||||
- 'src/frontends/tensorflow_lite/**/*'
|
||||
@@ -137,12 +153,21 @@
|
||||
- 'src/frontends/pytorch/**/*'
|
||||
- 'tests/layer_tests/pytorch_tests/**/*'
|
||||
- 'src/bindings/python/src/openvino/frontend/pytorch/**/*'
|
||||
- 'tests/layer_tests/py_frontend_tests/test_torch_decoder.py'
|
||||
- 'tests/layer_tests/py_frontend_tests/test_torch_frontend.py'
|
||||
- any: ['tests/model_hub_tests/**',
|
||||
'!tests/model_hub_tests/tf_hub_tests/**/*']
|
||||
|
||||
'category: tools':
|
||||
- any: ['tools/**',
|
||||
'!tools/pot/**/*',
|
||||
'!tools/mo/**/*']
|
||||
'!tools/mo/**/*',
|
||||
'!tools/ovc/**/*']
|
||||
|
||||
'category: transformations':
|
||||
- 'src/common/transformations/**/*'
|
||||
- 'src/common/offline_transformations/**/*'
|
||||
|
||||
'category: licensing':
|
||||
- 'licensing/**/*'
|
||||
- 'LICENSE'
|
||||
|
||||
62
.github/workflows/android_arm64.yml
vendored
62
.github/workflows/android_arm64.yml
vendored
@@ -2,23 +2,10 @@ name: Android ARM64 with vcpkg
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
push:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
branches:
|
||||
- master
|
||||
- 'releases/**'
|
||||
|
||||
concurrency:
|
||||
# github.ref is not unique in post-commit
|
||||
@@ -26,16 +13,40 @@ concurrency:
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
- name: Get affected components
|
||||
id: smart_ci
|
||||
uses: ./.github/actions/smart-ci
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
pr: ${{ github.event.number }}
|
||||
commit_sha: ${{ github.sha }}
|
||||
component_pattern: "category: (.*)"
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg,*/layer_tests_summary/*,*/conformance/*'
|
||||
|
||||
Build:
|
||||
timeout-minutes: 15
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
@@ -52,6 +63,7 @@ jobs:
|
||||
VCPKG_DEFAULT_BINARY_CACHE: '/mount/caches/ccache/android_arm64/vcpkg_cache'
|
||||
VCPKG_FORCE_SYSTEM_BINARIES: '1'
|
||||
SCCACHE_AZURE_KEY_PREFIX: android_arm64
|
||||
if: "!needs.smart_ci.outputs.skip_workflow"
|
||||
steps:
|
||||
- name: Install git
|
||||
run: apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
@@ -151,10 +163,24 @@ jobs:
|
||||
-B ${BUILD_DIR}
|
||||
|
||||
- name: Clean ccache stats
|
||||
run: sccache --zero-stats
|
||||
run: ${SCCACHE_PATH} --zero-stats
|
||||
|
||||
- name: Cmake - build
|
||||
run: cmake --build ${BUILD_DIR} --parallel
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ${SCCACHE_PATH} --show-stats
|
||||
|
||||
Overall_Status:
|
||||
name: ci/gha_overall_status_android
|
||||
needs: [Smart_CI, Build]
|
||||
if: ${{ always() }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check status of all jobs
|
||||
if: >-
|
||||
${{
|
||||
contains(needs.*.result, 'failure') ||
|
||||
contains(needs.*.result, 'cancelled')
|
||||
}}
|
||||
run: exit 1
|
||||
|
||||
30
.github/workflows/build_doc.yml
vendored
30
.github/workflows/build_doc.yml
vendored
@@ -4,7 +4,6 @@ on:
|
||||
|
||||
env:
|
||||
DOXY_VER: '1.9.6'
|
||||
DOXYREST_VER: '2.1.3'
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
|
||||
@@ -26,7 +25,7 @@ jobs:
|
||||
packages: graphviz texlive liblua5.2-0 libclang1-9 libclang-cpp9
|
||||
version: 3.0
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- uses: actions/setup-python@v5
|
||||
id: cp310
|
||||
with:
|
||||
python-version: '3.10'
|
||||
@@ -40,19 +39,18 @@ jobs:
|
||||
python3 -m pip install -r docs/requirements.txt
|
||||
(cd docs/openvino_sphinx_theme && python3 setup.py install)
|
||||
|
||||
- name: Download and install doxygen && doxyrest
|
||||
- name: Download and install doxygen
|
||||
run: |
|
||||
# install doxyrest
|
||||
wget https://github.com/vovkos/doxyrest/releases/download/doxyrest-$DOXYREST_VER/doxyrest-$DOXYREST_VER-linux-amd64.tar.xz
|
||||
tar -xf doxyrest-$DOXYREST_VER-linux-amd64.tar.xz
|
||||
echo "$(pwd)/doxyrest-$DOXYREST_VER-linux-amd64/bin/" >> $GITHUB_PATH
|
||||
# install doxygen
|
||||
wget https://www.doxygen.nl/files/doxygen-$DOXY_VER.linux.bin.tar.gz
|
||||
tar -xzf doxygen-$DOXY_VER.linux.bin.tar.gz
|
||||
echo "$(pwd)/doxygen-$DOXY_VER/bin/" >> $GITHUB_PATH
|
||||
|
||||
- name: CMake configure
|
||||
run: cmake -DENABLE_DOCS=ON -B build
|
||||
- name: Build docs
|
||||
run: |
|
||||
rm -rf build && mkdir build && cd build
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release -DENABLE_DOCS=ON -DENABLE_CPP_API=ON
|
||||
cmake --build . --target sphinx_docs
|
||||
|
||||
- name: Cache documentation
|
||||
id: cache_sphinx_docs
|
||||
@@ -61,13 +59,6 @@ jobs:
|
||||
path: build/docs/_build/.doctrees
|
||||
key: sphinx-docs-cache
|
||||
|
||||
- name: Get number of CPU cores
|
||||
uses: SimenB/github-actions-cpu-cores@v2
|
||||
id: cpu-cores
|
||||
|
||||
- name: Build docs
|
||||
run: cmake --build build --target sphinx_docs --parallel ${{ steps.cpu-cores.outputs.count }}
|
||||
|
||||
- name: Archive docs HTML
|
||||
run: (cd build/docs && zip -r openvino_docs_html.zip _build)
|
||||
|
||||
@@ -97,14 +88,13 @@ jobs:
|
||||
- name: Run Pytest
|
||||
run: |
|
||||
pytest --doxygen="./build/docs/doxygen.log" \
|
||||
--include_pot \
|
||||
--sphinx="./build/docs/sphinx.log" \
|
||||
--suppress-warnings="./docs/suppress_warnings.txt" \
|
||||
--suppress-warnings="./docs/scripts/tests/suppress_warnings.txt" \
|
||||
--confcutdir="./docs/scripts/tests/" \
|
||||
--html="./build/docs/_artifacts/doc-generation.html" \
|
||||
--doxygen-strip="$(pwd)" \
|
||||
--sphinx-strip="$(pwd)/build/docs/rst" \
|
||||
--doxygen-xfail="./docs/doxygen-xfail.txt" \
|
||||
--sphinx-strip="$(pwd)/build/docs/sphinx_source" \
|
||||
--xfail="./docs/scripts/tests/xfail.txt" \
|
||||
--self-contained-html ./docs/scripts/tests/test_docs.py
|
||||
|
||||
- name: 'Upload test results'
|
||||
|
||||
5
.github/workflows/cleanup_pip_cache.yml
vendored
5
.github/workflows/cleanup_pip_cache.yml
vendored
@@ -1,16 +1,17 @@
|
||||
name: Cleanup PIP caches
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# at 00:00 on the 1st day of every month
|
||||
- cron: '0 0 1 * *'
|
||||
|
||||
jobs:
|
||||
Cleanup_PIP_Caches:
|
||||
runs-on: aks-linux-2-cores
|
||||
runs-on: aks-linux-2-cores-8gb
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
- /mount:/mount
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip
|
||||
|
||||
|
||||
2
.github/workflows/coverage.yml
vendored
2
.github/workflows/coverage.yml
vendored
@@ -16,7 +16,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Setup python
|
||||
uses: actions/setup-python@v4
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.10.10'
|
||||
architecture: 'x64'
|
||||
|
||||
141
.github/workflows/coverity.yml
vendored
Normal file
141
.github/workflows/coverity.yml
vendored
Normal file
@@ -0,0 +1,141 @@
|
||||
name: Coverity (Ubuntu 20.04, Python 3.11)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# run daily at 00:00
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
concurrency:
|
||||
# github.ref is not unique in post-commit
|
||||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux-coverity
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: sccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: sccache
|
||||
GITHUB_WORKSPACE: '/__w/openvino/openvino'
|
||||
OPENVINO_REPO: /__w/openvino/openvino/openvino
|
||||
OPENVINO_CONTRIB_REPO: /__w/openvino/openvino/openvino_contrib
|
||||
BUILD_DIR: /__w/openvino/openvino/openvino_build
|
||||
SCCACHE_AZURE_KEY_PREFIX: coverity_ubuntu20_x86_64
|
||||
COVERITY_TOOL_DIR: /__w/openvino/openvino/coverity_tool
|
||||
|
||||
steps:
|
||||
- name: Install git
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
submodules: 'true'
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
# default-jdk - Java API
|
||||
apt install --assume-yes --no-install-recommends default-jdk
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.3
|
||||
with:
|
||||
version: "v0.5.4"
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||
should-setup-pip-paths: 'true'
|
||||
self-hosted-runner: 'true'
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: CMake configure - OpenVINO
|
||||
run: |
|
||||
cmake \
|
||||
-G "${{ env.CMAKE_GENERATOR }}" \
|
||||
-DENABLE_CPPLINT=OFF \
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_SYSTEM_OPENCL=ON \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DCPACK_GENERATOR=TGZ \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DOPENVINO_EXTRA_MODULES=${OPENVINO_CONTRIB_REPO}/modules \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=${{ env.CMAKE_CXX_COMPILER_LAUNCHER }} \
|
||||
-DCMAKE_C_COMPILER_LAUNCHER=${{ env.CMAKE_C_COMPILER_LAUNCHER }} \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
|
||||
- name: Clean sccache stats
|
||||
run: ${SCCACHE_PATH} --zero-stats
|
||||
|
||||
- name: Install Coverity tool
|
||||
run: |
|
||||
rm -rf ${COVERITY_TOOL_DIR} && mkdir -p ${COVERITY_TOOL_DIR}
|
||||
pushd ${COVERITY_TOOL_DIR}
|
||||
wget https://scan.coverity.com/download/linux64 --progress=bar:force:noscroll --post-data "token=${{ secrets.COVERITY_TOKEN }}&project=openvino" -O coverity_tool.tgz
|
||||
tar xvf coverity_tool.tgz && rm coverity_tool.tgz
|
||||
popd
|
||||
|
||||
- name: Cmake build - OpenVINO with Coverity
|
||||
run: |
|
||||
${COVERITY_TOOL_DIR}/cov-analysis*/bin/cov-build --dir ${BUILD_DIR}/cov-int \
|
||||
cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
||||
- name: Show sccache stats
|
||||
run: ${SCCACHE_PATH} --show-stats
|
||||
|
||||
- name: Pack Artefacts
|
||||
run: |
|
||||
pushd ${BUILD_DIR}
|
||||
tar -C ${BUILD_DIR} -czvf openvino.tgz cov-int
|
||||
popd
|
||||
|
||||
- name: Submit artefacts
|
||||
run: |
|
||||
apt-get update && apt-get install -y curl
|
||||
pushd ${BUILD_DIR}
|
||||
curl --form token=${{ secrets.COVERITY_TOKEN }} \
|
||||
--form email=${{ secrets.COVERITY_USER }} \
|
||||
--form file=@openvino.tgz \
|
||||
--form version="${{ github.sha }}" \
|
||||
--form description="https://github.com/openvinotoolkit/openvino/runs/${{ github.run_number }}" \
|
||||
https://scan.coverity.com/builds?project=openvino
|
||||
popd
|
||||
61
.github/workflows/fedora.yml
vendored
61
.github/workflows/fedora.yml
vendored
@@ -2,21 +2,7 @@ name: Fedora (RHEL), Python 3.9
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
push:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
branches:
|
||||
- master
|
||||
- 'releases/**'
|
||||
@@ -27,16 +13,40 @@ concurrency:
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
- name: Get affected components
|
||||
id: smart_ci
|
||||
uses: ./.github/actions/smart-ci
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
pr: ${{ github.event.number }}
|
||||
commit_sha: ${{ github.sha }}
|
||||
component_pattern: "category: (.*)"
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg,*/layer_tests_summary/*,*/conformance/*'
|
||||
|
||||
Build:
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: fedora:33
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
@@ -49,6 +59,7 @@ jobs:
|
||||
INSTALL_TEST_DIR: /__w/openvino/openvino/tests_install
|
||||
BUILD_DIR: /__w/openvino/openvino/openvino_build
|
||||
SCCACHE_AZURE_KEY_PREFIX: fedora33_x86_64_Release
|
||||
if: "!needs.smart_ci.outputs.skip_workflow"
|
||||
steps:
|
||||
- name: Install git
|
||||
run: yum update -y && yum install -y git
|
||||
@@ -179,7 +190,7 @@ jobs:
|
||||
|
||||
RPM_Packages:
|
||||
needs: Build
|
||||
timeout-minutes: 5
|
||||
timeout-minutes: 10
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
@@ -191,7 +202,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Download OpenVINO RPM packages
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_rpm_packages
|
||||
path: ${{ env.RPM_PACKAGES_DIR }}
|
||||
@@ -231,3 +242,17 @@ jobs:
|
||||
python3 -c 'from openvino.frontend import FrontEndManager; assert len(FrontEndManager().get_available_front_ends()) == 6'
|
||||
benchmark_app --help
|
||||
ovc --help
|
||||
|
||||
Overall_Status:
|
||||
name: ci/gha_overall_status_fedora
|
||||
needs: [Smart_CI, Build, RPM_Packages]
|
||||
if: ${{ always() }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check status of all jobs
|
||||
if: >-
|
||||
${{
|
||||
contains(needs.*.result, 'failure') ||
|
||||
contains(needs.*.result, 'cancelled')
|
||||
}}
|
||||
run: exit 1
|
||||
|
||||
124
.github/workflows/job_cpu_functional_tests.yml
vendored
Normal file
124
.github/workflows/job_cpu_functional_tests.yml
vendored
Normal file
@@ -0,0 +1,124 @@
|
||||
name: CPU functional tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
runner:
|
||||
description: 'Machine on which the tests would run'
|
||||
type: string
|
||||
required: true
|
||||
image:
|
||||
description: 'Docker image in which the tests would run'
|
||||
type: string
|
||||
required: false
|
||||
default: null
|
||||
|
||||
jobs:
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
timeout-minutes: 25
|
||||
runs-on: ${{ inputs.runner }}
|
||||
container:
|
||||
image: ${{ inputs.image }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
PARALLEL_TEST_SCRIPT: ${{ github.workspace }}/install/tests/functional_test_utils/layer_tests_summary/run_parallel.py
|
||||
PARALLEL_TEST_CACHE: ${{ github.workspace }}/install/tests/test_cache.lst
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
|
||||
echo "PARALLEL_TEST_SCRIPT=$GITHUB_WORKSPACE/install/tests/functional_test_utils/layer_tests_summary/run_parallel.py" >> "$GITHUB_ENV"
|
||||
echo "PARALLEL_TEST_CACHE=$GITHUB_WORKSPACE/install/tests/test_cache.lst" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd $INSTALL_DIR
|
||||
tar -xzf openvino_package.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
pushd $INSTALL_TEST_DIR
|
||||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -c=gpu -y
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: '3.11'
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: ${{ runner.os == 'Linux' }}
|
||||
|
||||
- name: Install python dependencies for run_parallel.py
|
||||
run: python3 -m pip install -r ${INSTALL_TEST_DIR}/functional_test_utils/layer_tests_summary/requirements.txt
|
||||
|
||||
- name: Restore tests execution time
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-${{ runner.arch }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-${{ runner.arch }}-tests-functional-cpu-stamp
|
||||
|
||||
- name: Intel CPU plugin func tests (parallel)
|
||||
run: |
|
||||
# Needed as the Linux CC does not require setupvars to work
|
||||
if [[ -f "${INSTALL_DIR}/setupvars.sh" ]]; then
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
fi
|
||||
|
||||
python3 ${PARALLEL_TEST_SCRIPT} -e ${INSTALL_TEST_DIR}/ov_cpu_func_tests -c ${PARALLEL_TEST_CACHE} -w ${INSTALL_TEST_DIR} -s suite -rf 0 -- --gtest_print_time=1 --gtest_filter=*smoke*
|
||||
timeout-minutes: 20
|
||||
|
||||
- name: Save tests execution time
|
||||
uses: actions/cache/save@v3
|
||||
if: github.ref_name == 'master'
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-${{ runner.arch }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-functional-cpu
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/temp/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/failed/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/crashed/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/hanged/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/interapted/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/hash_table.csv
|
||||
${{ env.PARALLEL_TEST_CACHE }}
|
||||
if-no-files-found: 'error'
|
||||
279
.github/workflows/job_cxx_unit_tests.yml
vendored
Normal file
279
.github/workflows/job_cxx_unit_tests.yml
vendored
Normal file
@@ -0,0 +1,279 @@
|
||||
name: Samples
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
runner:
|
||||
description: 'Machine on which the tests would run'
|
||||
type: string
|
||||
required: true
|
||||
image:
|
||||
description: 'Docker image in which the tests would run'
|
||||
type: string
|
||||
required: false
|
||||
default: null
|
||||
affected-components:
|
||||
description: 'Components that are affected by changes in the commit defined by the Smart CI Action'
|
||||
type: string
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
CXX_Unit_Tests:
|
||||
name: C++ unit tests
|
||||
timeout-minutes: 30
|
||||
runs-on: ${{ inputs.runner }}
|
||||
container:
|
||||
image: ${{ inputs.image }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd $INSTALL_DIR
|
||||
tar -xzf openvino_package.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
pushd $INSTALL_TEST_DIR
|
||||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -c=gpu -y
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: OpenVINO Core Unit Tests
|
||||
if: fromJSON(inputs.affected-components).Core.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_core_unit_tests --gtest_print_time=1 --gtest_filter=-*IE_GPU* \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-OVCoreUT.xml
|
||||
|
||||
- name: OpenVINO Inference Functional Tests
|
||||
if: fromJSON(inputs.affected-components).inference.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_inference_functional_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-InferenceFunc.xml
|
||||
|
||||
- name: OpenVINO Inference Unit Tests
|
||||
if: fromJSON(inputs.affected-components).inference.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_inference_unit_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-InferenceUnit.xml
|
||||
|
||||
- name: Low Precision Transformations Tests
|
||||
if: fromJSON(inputs.affected-components).LP_transformations.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
${INSTALL_TEST_DIR}/ov_lp_transformations_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-LpTransformations.xml
|
||||
|
||||
- name: OpenVINO Conditional compilation tests
|
||||
if: fromJSON(inputs.affected-components).Core.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_conditional_compilation_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-ConditionalCompilation.xml
|
||||
|
||||
- name: IR frontend tests
|
||||
if: fromJSON(inputs.affected-components).IR_FE.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_ir_frontend_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-IRFrontend.xml
|
||||
|
||||
- name: PaddlePaddle frontend tests
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/paddle_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-PaddleTests.xml
|
||||
|
||||
- name: ONNX frontend tests
|
||||
if: ${{ fromJSON(inputs.affected-components).ONNX_FE.test && runner.arch != 'ARM64' }} # Ticket for macOS ARM64: 122663, for Linux ARM64: 126280
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_onnx_frontend_tests --gtest_print_time=1 \
|
||||
--gtest_filter=-*IE_GPU* \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-ONNXFrontend.xml
|
||||
|
||||
- name: TensorFlow Common frontend tests
|
||||
if: fromJSON(inputs.affected-components).TF_FE.test ||
|
||||
fromJSON(inputs.affected-components).TFL_FE.test &&
|
||||
(runner.os != 'macOS' && runner.arch != 'ARM64')
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_tensorflow_common_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-TensorFlowCommonFrontend.xml
|
||||
|
||||
- name: TensorFlow frontend tests
|
||||
if: fromJSON(inputs.affected-components).TF_FE.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
${INSTALL_TEST_DIR}/ov_tensorflow_frontend_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-TensorFlowFrontend.xml
|
||||
|
||||
- name: TensorFlow Lite frontend tests
|
||||
if: fromJSON(inputs.affected-components).TFL_FE.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_tensorflow_lite_frontend_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-TensorFlowLiteFrontend.xml
|
||||
|
||||
- name: Transformations func tests
|
||||
if: ${{ fromJSON(inputs.affected-components).transformations.test && runner.arch != 'ARM64' }} # Ticket: 126281
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
${INSTALL_TEST_DIR}/ov_transformations_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-Transformations.xml
|
||||
|
||||
- name: Legacy Transformations func tests
|
||||
if: fromJSON(inputs.affected-components).GNA.test &&
|
||||
(runner.os != 'macOS' && runner.arch != 'ARM64')
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_legacy_transformations_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-LegacyTransformations.xml
|
||||
|
||||
- name: Inference Engine 1.0 unit tests
|
||||
if: fromJSON(inputs.affected-components).GNA.test &&
|
||||
(runner.os != 'macOS' && runner.arch != 'ARM64')
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/InferenceEngineUnitTests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-InferenceEngineUnitTests.xml
|
||||
|
||||
- name: Common test utils tests
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_util_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-CommonUtilTests.xml
|
||||
|
||||
- name: Snippets func tests
|
||||
if: fromJSON(inputs.affected-components).CPU.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_snippets_func_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-SnippetsFuncTests.xml
|
||||
|
||||
- name: CPU plugin unit tests
|
||||
if: fromJSON(inputs.affected-components).CPU.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_cpu_unit_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-CPUUnitTests.xml
|
||||
|
||||
- name: ov_subgraphs_dumper_tests tests
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_subgraphs_dumper_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-ov_subgraphs_dumper_tests.xml
|
||||
|
||||
- name: Template OpImpl tests
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_op_conformance_tests --gtest_print_time=1 --device=TEMPLATE --gtest_filter=*OpImpl*\
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-OpImplTests.xml
|
||||
|
||||
- name: AUTO unit tests
|
||||
if: fromJSON(inputs.affected-components).AUTO.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_auto_unit_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-ov_auto_unit_tests.xml
|
||||
|
||||
- name: AUTO func Tests
|
||||
if: fromJSON(inputs.affected-components).AUTO.test
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_auto_func_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_func_tests.xml
|
||||
|
||||
- name: Template plugin func tests
|
||||
if: fromJSON(inputs.affected-components).TEMPLATE.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_template_func_tests --gtest_print_time=1 \
|
||||
--gtest_filter=*smoke* \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-TemplateFuncTests.xml
|
||||
|
||||
- name: Inference Engine C API tests
|
||||
if: fromJSON(inputs.affected-components).C_API.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/InferenceEngineCAPITests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-InferenceEngineCAPITests.xml
|
||||
|
||||
- name: OpenVINO C API tests
|
||||
if: fromJSON(inputs.affected-components).C_API.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_capi_test --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-OpenVINOCAPITests.xml
|
||||
|
||||
- name: AutoBatch unit tests
|
||||
if: fromJSON(inputs.affected-components).AUTO_BATCH.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_auto_batch_unit_tests --gtest_output=xml:${INSTALL_TEST_DIR}/TEST-ov_auto_batch_unit_tests.xml
|
||||
|
||||
- name: AutoBatch func tests
|
||||
if: fromJSON(inputs.affected-components).AUTO_BATCH.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_auto_batch_func_tests --gtest_output=xml:${INSTALL_TEST_DIR}/TEST-ov_auto_batch_func_tests.xml
|
||||
|
||||
- name: Proxy Plugin func tests
|
||||
if: fromJSON(inputs.affected-components).PROXY.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:${INSTALL_TEST_DIR}/TEST-OVProxyTests.xml
|
||||
|
||||
- name: Hetero unit tests
|
||||
if: fromJSON(inputs.affected-components).HETERO.test
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroUnitTests.xml
|
||||
|
||||
- name: Hetero func tests
|
||||
if: fromJSON(inputs.affected-components).HETERO.test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:${INSTALL_TEST_DIR}/TEST-OVHeteroFuncTests.xml
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-cpp
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'warn'
|
||||
83
.github/workflows/job_debian_packages.yml
vendored
Normal file
83
.github/workflows/job_debian_packages.yml
vendored
Normal file
@@ -0,0 +1,83 @@
|
||||
name: Debian Packages
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
runner:
|
||||
description: 'Machine on which the tests would run'
|
||||
type: string
|
||||
required: true
|
||||
image:
|
||||
description: 'Docker image in which the tests would run'
|
||||
type: string
|
||||
required: false
|
||||
default: null
|
||||
|
||||
jobs:
|
||||
Debian_Packages:
|
||||
name: Debian Packages
|
||||
runs-on: ${{ inputs.runner }}
|
||||
container:
|
||||
image: ${{ inputs.image }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
DEBIAN_PACKAGES_DIR: ${{ github.workspace }}/packages
|
||||
steps:
|
||||
|
||||
- name: Download OpenVINO debian packages
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_debian_packages
|
||||
path: ${{ env.DEBIAN_PACKAGES_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: echo "DEBIAN_PACKAGES_DIR=$GITHUB_WORKSPACE/packages" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Install debian packages & check conflicts
|
||||
run: |
|
||||
apt-get update -y
|
||||
|
||||
if [[ "${{ runner.arch }}" == "X64" ]]; then
|
||||
# Install debian packages from previous release
|
||||
apt-get install --no-install-recommends -y gnupg wget ca-certificates
|
||||
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
|
||||
apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
|
||||
echo "deb https://apt.repos.intel.com/openvino/2023 ubuntu20 main" | tee /etc/apt/sources.list.d/intel-openvino-2023.list
|
||||
apt-get update -y
|
||||
apt-get install -y openvino
|
||||
fi
|
||||
|
||||
# install our local one and make sure the conflicts are resolved
|
||||
apt-get install --no-install-recommends -y dpkg-dev
|
||||
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
|
||||
echo "deb [trusted=yes] file:${DEBIAN_PACKAGES_DIR} ./" | tee /etc/apt/sources.list.d/openvino-local.list
|
||||
apt-get update -y
|
||||
apt-get install openvino -y
|
||||
working-directory: ${{ env.DEBIAN_PACKAGES_DIR }}
|
||||
|
||||
- name: Test debian packages
|
||||
run: |
|
||||
/usr/share/openvino/samples/cpp/build_samples.sh
|
||||
/usr/share/openvino/samples/c/build_samples.sh
|
||||
|
||||
[[ "${{ runner.arch }}" == "X64" ]] && path_by_arch="intel64" || path_by_arch="aarch64"
|
||||
~/openvino_cpp_samples_build/$path_by_arch/Release/hello_query_device
|
||||
|
||||
python3 /usr/share/openvino/samples/python/hello_query_device/hello_query_device.py
|
||||
python3 -c 'from openvino import Core; Core().get_property("CPU", "AVAILABLE_DEVICES")'
|
||||
|
||||
if [[ "${{ runner.arch }}" == "X64" ]]; then
|
||||
python3 -c 'from openvino import Core; Core().get_property("GPU", "AVAILABLE_DEVICES")'
|
||||
fi
|
||||
|
||||
python3 -c 'from openvino import Core; Core().get_property("AUTO", "SUPPORTED_METRICS")'
|
||||
python3 -c 'from openvino import Core; Core().get_property("MULTI", "SUPPORTED_METRICS")'
|
||||
python3 -c 'from openvino import Core; Core().get_property("HETERO", "SUPPORTED_METRICS")'
|
||||
python3 -c 'from openvino import Core; Core().get_property("BATCH", "SUPPORTED_METRICS")'
|
||||
python3 -c 'from openvino.frontend import FrontEndManager; assert len(FrontEndManager().get_available_front_ends()) == 6'
|
||||
benchmark_app --help
|
||||
ovc --help
|
||||
157
.github/workflows/job_onnx_runtime.yml
vendored
Normal file
157
.github/workflows/job_onnx_runtime.yml
vendored
Normal file
@@ -0,0 +1,157 @@
|
||||
name: ONNX Runtime Integration
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
runner:
|
||||
description: 'Machine on which the tests would run'
|
||||
type: string
|
||||
required: true
|
||||
container:
|
||||
description: 'JSON to be converted to the value of the "container" configuration for the job'
|
||||
type: string
|
||||
required: false
|
||||
default: '{"image": null}'
|
||||
sccache-azure-key-prefix:
|
||||
description: 'Key prefix for the cache folder on the Azure'
|
||||
type: string
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
ONNX_Runtime:
|
||||
name: ONNX Runtime Integration
|
||||
timeout-minutes: 60
|
||||
runs-on: ${{ inputs.runner }}
|
||||
container: ${{ fromJSON(inputs.container) }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: sccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: sccache
|
||||
SCCACHE_AZURE_KEY_PREFIX: ${{ inputs.sccache-azure-key-prefix }}
|
||||
ONNX_RUNTIME_REPO: ${{ github.workspace }}/onnxruntime
|
||||
ONNX_RUNTIME_UTILS: ${{ github.workspace }}/install/onnxruntime
|
||||
ONNX_RUNTIME_BUILD_DIR: ${{ github.workspace }}/onnxruntime/build
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "OPENVINO_REPO=$GITHUB_WORKSPACE/openvino" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "ONNX_RUNTIME_REPO=$GITHUB_WORKSPACE/onnxruntime" >> "$GITHUB_ENV"
|
||||
echo "ONNX_RUNTIME_UTILS=$GITHUB_WORKSPACE/install/onnxruntime" >> "$GITHUB_ENV"
|
||||
echo "ONNX_RUNTIME_BUILD_DIR=$GITHUB_WORKSPACE/onnxruntime/build" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Fetch install_build_dependencies.sh and setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
install_build_dependencies.sh
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Install git
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: '3.11'
|
||||
should-setup-pip-paths: 'false'
|
||||
|
||||
- name: Extract OpenVINO package
|
||||
run: |
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -xzf openvino_package.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies
|
||||
run: ${INSTALL_DIR}/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -y
|
||||
|
||||
- name: Clone ONNX Runtime
|
||||
run: |
|
||||
branch=`tr -s '\n ' < ${ONNX_RUNTIME_UTILS}/version`
|
||||
git clone --branch $branch --single-branch --recursive https://github.com/microsoft/onnxruntime.git ${ONNX_RUNTIME_REPO}
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: Install Build Dependencies
|
||||
run: bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.3
|
||||
with:
|
||||
version: "v0.5.4"
|
||||
|
||||
- name: Build Lin ONNX Runtime
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
${ONNX_RUNTIME_REPO}/build.sh \
|
||||
--config RelWithDebInfo \
|
||||
--use_openvino CPU_FP32 \
|
||||
--build_shared_lib \
|
||||
--parallel \
|
||||
--skip_tests \
|
||||
--compile_no_warning_as_error \
|
||||
--build_dir ${ONNX_RUNTIME_BUILD_DIR}
|
||||
env:
|
||||
CXXFLAGS: "-Wno-error=deprecated-declarations"
|
||||
|
||||
- name: Show sccache stats
|
||||
run: ${SCCACHE_PATH} --show-stats
|
||||
|
||||
- name: Run onnxruntime_test_all
|
||||
if: ${{ runner.arch != 'ARM64' }} # Ticket: 126277
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
skip_tests=$(tr -s '\n ' ':' < ${ONNX_RUNTIME_UTILS}/skip_tests)
|
||||
|
||||
./onnxruntime_test_all --gtest_filter=-$skip_tests
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo/RelWithDebInfo
|
||||
|
||||
- name: Run onnxruntime_shared_lib_test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
./onnxruntime_shared_lib_test --gtest_filter=-CApiTest.test_custom_op_openvino_wrapper_library
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo/RelWithDebInfo
|
||||
|
||||
- name: Run onnxruntime_global_thread_pools_test
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
./onnxruntime_global_thread_pools_test
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo/RelWithDebInfo
|
||||
|
||||
- name: Run onnxruntime_api_tests_without_env
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
./onnxruntime_api_tests_without_env
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo/RelWithDebInfo
|
||||
|
||||
- name: Run pytorch-converted tests
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
./onnx_test_runner "${ONNX_RUNTIME_REPO}/cmake/external/onnx/onnx/backend/test/data/pytorch-converted"
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo/RelWithDebInfo
|
||||
|
||||
- name: Run pytorch-operator tests
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
./onnx_test_runner "${ONNX_RUNTIME_REPO}/cmake/external/onnx/onnx/backend/test/data/pytorch-operator"
|
||||
working-directory: ${{ env.ONNX_RUNTIME_BUILD_DIR }}/RelWithDebInfo/RelWithDebInfo
|
||||
323
.github/workflows/job_python_unit_tests.yml
vendored
Normal file
323
.github/workflows/job_python_unit_tests.yml
vendored
Normal file
@@ -0,0 +1,323 @@
|
||||
name: Python unit tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
runner:
|
||||
description: 'Machine on which the tests would run'
|
||||
type: string
|
||||
required: true
|
||||
container:
|
||||
description: 'JSON to be converted to the value of the "container" configuration for the job'
|
||||
type: string
|
||||
required: false
|
||||
default: '{"image": null}'
|
||||
affected-components:
|
||||
description: 'Components that are affected by changes in the commit defined by the Smart CI Action'
|
||||
type: string
|
||||
required: true
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
jobs:
|
||||
Python_Unit_Tests:
|
||||
name: Python unit tests
|
||||
timeout-minutes: 60
|
||||
runs-on: ${{ inputs.runner }}
|
||||
container: ${{ fromJSON(inputs.container) }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
LAYER_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/layer_tests
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "OPENVINO_REPO=$GITHUB_WORKSPACE/openvino" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
|
||||
echo "LAYER_TESTS_INSTALL_DIR=$GITHUB_WORKSPACE/install/tests/layer_tests" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd $INSTALL_DIR
|
||||
tar -xzf openvino_package.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
pushd $INSTALL_TEST_DIR
|
||||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -y
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ runner.os == 'Linux' && env.PIP_CACHE_PATH || '' }}
|
||||
should-setup-pip-paths: ${{ runner.os == 'Linux' }}
|
||||
self-hosted-runner: ${{ runner.os == 'Linux' }}
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: Install OpenVINO Python wheels
|
||||
run: |
|
||||
# Install the core OV wheel
|
||||
python3 -m pip install ${INSTALL_DIR}/tools/openvino-*.whl
|
||||
|
||||
extras_to_install="caffe,kaldi,onnx,tensorflow2,pytorch"
|
||||
|
||||
if [[ "${{ runner.arch }}" != "ARM64" ]]; then
|
||||
extras_to_install="mxnet,$extras_to_install"
|
||||
fi
|
||||
|
||||
# Find and install OV dev wheel
|
||||
pushd ${INSTALL_DIR}/tools
|
||||
ov_dev_wheel_name=$(find . -name 'openvino_dev*.whl')
|
||||
python3 -m pip install $ov_dev_wheel_name[$extras_to_install]
|
||||
popd
|
||||
|
||||
- name: Install Python API tests dependencies
|
||||
run: |
|
||||
# To enable pytest parallel features
|
||||
python3 -m pip install pytest-xdist[psutil]
|
||||
# For torchvision to OpenVINO preprocessing converter
|
||||
python3 -m pip install -r ${INSTALL_TEST_DIR}/python/preprocess/torchvision/requirements.txt
|
||||
|
||||
# TODO: replace with Python API tests requirements
|
||||
python3 -m pip install -r ${INSTALL_TEST_DIR}/mo/requirements_dev.txt
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: Python API 1.0 Tests
|
||||
# if: fromJSON(inputs.affected-components).Python_API.test # Ticket: 127101
|
||||
run: |
|
||||
python3 -m pytest -s ${INSTALL_TEST_DIR}/pyngraph \
|
||||
--junitxml=${INSTALL_TEST_DIR}/TEST-Pyngraph.xml \
|
||||
--ignore=${INSTALL_TEST_DIR}/pyngraph/tests_compatibility/test_onnx/test_zoo_models.py \
|
||||
--ignore=${INSTALL_TEST_DIR}/pyngraph/tests_compatibility/test_onnx/test_backend.py
|
||||
|
||||
- name: Python API 2.0 Tests
|
||||
# if: ${{ fromJSON(inputs.affected-components).Python_API.test && runner.arch != 'ARM64' }} # Ticket: 126380, 127101
|
||||
run: |
|
||||
# for 'template' extension
|
||||
export LD_LIBRARY_PATH=${INSTALL_TEST_DIR}:$LD_LIBRARY_PATH
|
||||
python3 -m pytest -sv ${INSTALL_TEST_DIR}/pyopenvino \
|
||||
--junitxml=${INSTALL_TEST_DIR}/TEST-Pyngraph.xml \
|
||||
--ignore=${INSTALL_TEST_DIR}/pyopenvino/tests/test_utils/test_utils.py
|
||||
|
||||
- name: Model Optimizer unit tests
|
||||
if: fromJSON(inputs.affected-components).MO.test
|
||||
run: |
|
||||
skip_filter=''
|
||||
if [[ "${{ runner.os }}" != "Linux" ]] && [[ "${{ runner.arch }} != "ARM64" ]] || [[ "${{ runner.os }} != "macOS" ]]; then
|
||||
# required for MxNet
|
||||
apt-get install -y libgomp1 libquadmath0
|
||||
else
|
||||
# Skips under Ticket: 122666
|
||||
skip_filter='--ignore-glob=**/mo/unit_tests/mo/front/mxnet/**'
|
||||
fi
|
||||
|
||||
python3 -m pytest -s ${INSTALL_TEST_DIR}/mo/unit_tests \
|
||||
--junitxml=${INSTALL_TEST_DIR}/TEST-ModelOptimizer.xml \
|
||||
"$skip_filter"
|
||||
|
||||
- name: Python ONNX operators tests
|
||||
if: fromJSON(inputs.affected-components).Python_API.test ||
|
||||
fromJSON(inputs.affected-components).ONNX_FE.test && runner.os != 'macOS' # Ticket: 123325
|
||||
run: |
|
||||
# Skip test_onnx/test_zoo_models and test_onnx/test_backend due to long execution time - ONNX Model Zoo tests are run separately
|
||||
python3 -m pytest -sv ${INSTALL_TEST_DIR}/onnx -k 'not cuda' \
|
||||
--junitxml=${INSTALL_TEST_DIR}/TEST-onnx_frontend.xml \
|
||||
--ignore=${INSTALL_TEST_DIR}/onnx/test_python/test_zoo_models.py
|
||||
|
||||
- name: OVC unit tests
|
||||
if: fromJSON(inputs.affected-components).MO.test
|
||||
run: python3 -m pytest -s ${INSTALL_TEST_DIR}/ovc/unit_tests --junitxml=${INSTALL_TEST_DIR}/TEST-OpenVinoConversion.xml
|
||||
|
||||
- name: Install Python Layer tests dependencies
|
||||
run: |
|
||||
# layer test requirements
|
||||
python3 -m pip install -r ${LAYER_TESTS_INSTALL_DIR}/requirements.txt
|
||||
|
||||
- name: MO Python API Tests
|
||||
if: fromJSON(inputs.affected-components).MO.test
|
||||
run: |
|
||||
# Import 'test_utils' installed in '<package_test>/tests/python/openvino'
|
||||
export LD_LIBRARY_PATH=${PIP_INSTALL_PATH}/openvino/libs:$LD_LIBRARY_PATH
|
||||
export PYTHONPATH=${INSTALL_TEST_DIR}/python
|
||||
|
||||
if [[ "${{ runner.os }}" == "Linux" ]] && [[ "${{ runner.arch }}" == "ARM64" ]]; then
|
||||
# Find gomp lib
|
||||
GOMP_LIB=$(find "${PIP_INSTALL_PATH}/torch/lib/../../torch.libs/" -name '*libgomp-*so*')
|
||||
export LD_PRELOAD=${GOMP_LIB}
|
||||
fi
|
||||
|
||||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/mo_python_api_tests --junitxml=${INSTALL_TEST_DIR}/TEST-test_mo_convert.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: OVC Python API Tests
|
||||
if: fromJSON(inputs.affected-components).MO.test
|
||||
run: |
|
||||
# Import 'test_utils' installed in '<package_test>/tests/python/openvino'
|
||||
export PYTHONPATH=${INSTALL_TEST_DIR}/python
|
||||
export LD_LIBRARY_PATH=${PIP_INSTALL_PATH}/openvino/libs:$LD_LIBRARY_PATH
|
||||
|
||||
if [[ "${{ runner.os }}" == "Linux" ]] && [[ "${{ runner.arch }}" == "ARM64" ]]; then
|
||||
# Find gomp lib
|
||||
GOMP_LIB=$(find "${PIP_INSTALL_PATH}/torch/lib/../../torch.libs/" -name '*libgomp-*so*')
|
||||
export LD_PRELOAD=${GOMP_LIB}
|
||||
fi
|
||||
|
||||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/ovc_python_api_tests --junitxml=${INSTALL_TEST_DIR}/TEST-test_ovc_convert.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: Python Frontend tests
|
||||
if: fromJSON(inputs.affected-components).PyTorch_FE.test ||
|
||||
fromJSON(inputs.affected-components).PDPD_FE.test
|
||||
run: |
|
||||
# to allow 'libtest_builtin_extensions.so' to find 'libopenvino_onnx_frontend.so'
|
||||
export LD_LIBRARY_PATH=${PIP_INSTALL_PATH}/openvino/libs:$LD_LIBRARY_PATH
|
||||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/py_frontend_tests --junitxml=${INSTALL_TEST_DIR}/TEST-test_py_fontend.xml
|
||||
|
||||
- name: PyTorch Layer Tests
|
||||
if: ${{ fromJSON(inputs.affected-components).PyTorch_FE.test && runner.arch != 'ARM64' }} # Ticket: 126287
|
||||
run: python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/pytorch_tests -n logical -m precommit --junitxml=${INSTALL_TEST_DIR}/TEST-pytorch.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP32
|
||||
|
||||
- name: PyTorch torch.compile TORCHFX Layer Tests
|
||||
if: ${{ fromJSON(inputs.affected-components).PyTorch_FE.test && runner.os != 'macOS' }}
|
||||
run: |
|
||||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/pytorch_tests -m precommit_fx_backend --junitxml=${INSTALL_TEST_DIR}/TEST-pytorch.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP32
|
||||
PYTORCH_TRACING_MODE: TORCHFX
|
||||
|
||||
- name: PyTorch torch.compile TORCHSCRIPT Layer Tests
|
||||
if: ${{ fromJSON(inputs.affected-components).PyTorch_FE.test && runner.os != 'macOS' }}
|
||||
run: |
|
||||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/pytorch_tests -m precommit_ts_backend --junitxml=${INSTALL_TEST_DIR}/TEST-pytorch.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP32
|
||||
PYTORCH_TRACING_MODE: TORCHSCRIPT
|
||||
|
||||
- name: ONNX Layer Tests
|
||||
if: fromJSON(inputs.affected-components).ONNX_FE.test
|
||||
run: |
|
||||
# requires 'unit_tests' from 'tools/mo'
|
||||
export PYTHONPATH=${INSTALL_TEST_DIR}/mo:$PYTHONPATH
|
||||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/onnx_tests -m "not launch_only_if_manually_specified and precommit" --junitxml=${INSTALL_TEST_DIR}/TEST-onnx.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - TF FE
|
||||
if: fromJSON(inputs.affected-components).TF_FE.test
|
||||
run: |
|
||||
# requires 'unit_tests' from 'mo'
|
||||
export PYTHONPATH=${INSTALL_TEST_DIR}/mo
|
||||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/tensorflow_tests/ --use_new_frontend -m precommit_tf_fe --junitxml=${INSTALL_TEST_DIR}/TEST-tf_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow 2 Layer Tests - TF FE
|
||||
if: fromJSON(inputs.affected-components).TF_FE.test && runner.os != 'macOS' # Ticket: 123322
|
||||
run: |
|
||||
# requires 'unit_tests' from 'mo'
|
||||
export PYTHONPATH=${INSTALL_TEST_DIR}/mo
|
||||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/tensorflow2_keras_tests/ --use_new_frontend -m precommit_tf_fe --junitxml=${INSTALL_TEST_DIR}/TEST-tf2_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: JAX Layer Tests - TF FE
|
||||
if: ${{ fromJSON(inputs.affected-components).TF_FE.test && runner.arch != 'ARM64' }}
|
||||
run: python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/jax_tests/ -m precommit --junitxml=${INSTALL_TEST_DIR}/TEST-jax.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - Legacy FE
|
||||
if: fromJSON(inputs.affected-components).TF_FE.test
|
||||
run: python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/tensorflow_tests/test_tf_Roll.py --ir_version=10 --junitxml=${INSTALL_TEST_DIR}/TEST-tf_Roll.xml
|
||||
|
||||
- name: TensorFlow 2 Layer Tests - Legacy FE
|
||||
if: fromJSON(inputs.affected-components).TF_FE.test
|
||||
run: python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/tensorflow2_keras_tests/test_tf2_keras_activation.py --ir_version=11 -k "sigmoid" --junitxml=${INSTALL_TEST_DIR}/TEST-tf2_Activation.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow Lite Layer Tests - TFL FE
|
||||
if: fromJSON(inputs.affected-components).TFL_FE.test
|
||||
run: python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/tensorflow_lite_tests/ --junitxml=${INSTALL_TEST_DIR}/TEST-tfl_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: Clone API snippets
|
||||
if: runner.os != 'macOS'
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: openvino/docs/snippets
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'false'
|
||||
|
||||
- name: Docs Python snippets
|
||||
if: runner.os != 'macOS'
|
||||
run: |
|
||||
# to find 'snippets' module in docs
|
||||
export PYTHONPATH=${OPENVINO_REPO}/docs
|
||||
# for 'template' extension
|
||||
export LD_LIBRARY_PATH=${INSTALL_TEST_DIR}:$LD_LIBRARY_PATH
|
||||
python3 ${OPENVINO_REPO}/docs/snippets/main.py
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-python
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.html
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'warn'
|
||||
132
.github/workflows/job_pytorch_models_tests.yml
vendored
Normal file
132
.github/workflows/job_pytorch_models_tests.yml
vendored
Normal file
@@ -0,0 +1,132 @@
|
||||
name: PyTorch Models tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
runner:
|
||||
description: 'Machine on which the tests would run'
|
||||
type: string
|
||||
required: true
|
||||
container:
|
||||
description: 'JSON to be converted to the value of the "container" configuration for the job'
|
||||
type: string
|
||||
required: false
|
||||
default: '{"image": null}'
|
||||
event:
|
||||
description: 'Event that triggered the workflow. E.g., "schedule" for nightly runs'
|
||||
type: string
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
PyTorch_Models_Tests:
|
||||
name: PyTorch Models tests
|
||||
timeout-minutes: ${{ inputs.event == 'schedule' && 400 || 30 }}
|
||||
runs-on: ${{ inputs.runner }}
|
||||
container: ${{ fromJSON(inputs.container) }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
MODEL_HUB_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/model_hub_tests
|
||||
steps:
|
||||
|
||||
- name: Check sudo
|
||||
if: ${{ runner.os == 'Linux' }}
|
||||
run: if [ "$(id -u)" -eq 0 ]; then apt update && apt --assume-yes install sudo; fi
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "OPENVINO_REPO=$GITHUB_WORKSPACE/openvino" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
|
||||
echo "MODEL_HUB_TESTS_INSTALL_DIR=$GITHUB_WORKSPACE/install/tests/model_hub_tests" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -xzf openvino_package.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
pushd ${INSTALL_TEST_DIR}
|
||||
tar -xzf openvino_tests.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Install dependencies
|
||||
if: ${{ runner.os == 'Linux' }}
|
||||
run: |
|
||||
# install git (required to build pip deps from the sources)
|
||||
# install 'g++' to build 'detectron2' and 'natten' wheels
|
||||
sudo apt-get install --assume-yes --no-install-recommends g++ git ca-certificates
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: '3.11'
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: ${{ contains(inputs.runner, 'aks') }}
|
||||
|
||||
- name: Install OpenVINO Python wheels
|
||||
run: python3 -m pip install ${INSTALL_DIR}/tools/openvino-*
|
||||
|
||||
- name: Install PyTorch tests requirements
|
||||
run: |
|
||||
python3 -m pip install -r ${MODEL_HUB_TESTS_INSTALL_DIR}/torch_tests/requirements.txt
|
||||
python3 -m pip install -r ${MODEL_HUB_TESTS_INSTALL_DIR}/torch_tests/requirements_secondary.txt
|
||||
echo "Available storage:"
|
||||
df -h
|
||||
env:
|
||||
CPLUS_INCLUDE_PATH: ${{ env.Python_ROOT_DIR }}/include/python${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: PyTorch Models Tests
|
||||
run: |
|
||||
export PYTHONPATH=${MODEL_HUB_TESTS_INSTALL_DIR}:$PYTHONPATH
|
||||
python3 -m pytest ${MODEL_HUB_TESTS_INSTALL_DIR}/torch_tests -m ${TYPE} --html=${INSTALL_TEST_DIR}/TEST-torch_model_tests.html --self-contained-html -v
|
||||
env:
|
||||
TYPE: ${{ inputs.event == 'schedule' && 'nightly' || 'precommit'}}
|
||||
TEST_DEVICE: CPU
|
||||
USE_SYSTEM_CACHE: False
|
||||
OP_REPORT_FILE: ${{ env.INSTALL_TEST_DIR }}/TEST-torch_unsupported_ops.log
|
||||
|
||||
- name: Reformat unsupported ops file
|
||||
if: '!cancelled()'
|
||||
run: |
|
||||
python3 ${MODEL_HUB_TESTS_INSTALL_DIR}/torch_tests/scripts/process_op_report.py ${INSTALL_TEST_DIR}/TEST-torch_unsupported_ops.log
|
||||
|
||||
- name: Available storage after tests
|
||||
run: |
|
||||
echo "Available storage:"
|
||||
df -h
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-torch-models
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST-torch*
|
||||
if-no-files-found: 'error'
|
||||
132
.github/workflows/job_samples_tests.yml
vendored
Normal file
132
.github/workflows/job_samples_tests.yml
vendored
Normal file
@@ -0,0 +1,132 @@
|
||||
name: Samples
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
runner:
|
||||
description: 'Machine on which the tests would run'
|
||||
type: string
|
||||
required: true
|
||||
image:
|
||||
description: 'Docker image in which the tests would run'
|
||||
type: string
|
||||
required: false
|
||||
default: null
|
||||
affected-components:
|
||||
description: 'Components that are affected by changes in the commit defined by the Smart CI Action'
|
||||
type: string
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
Samples:
|
||||
runs-on: ${{ inputs.runner }}
|
||||
container:
|
||||
image: ${{ inputs.image }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
|
||||
echo "BUILD_DIR=$GITHUB_WORKSPACE/build" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd $INSTALL_DIR
|
||||
tar -xzf openvino_package.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
pushd $INSTALL_TEST_DIR
|
||||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -y
|
||||
|
||||
- name: Install OpenVINO dependencies (mac)
|
||||
if: runner.os == 'macOS'
|
||||
run: brew install coreutils
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: '3.11'
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: ${{ runner.os == 'Linux' }}
|
||||
|
||||
- name: Build cpp samples - GCC
|
||||
run: $INSTALL_DIR/samples/cpp/build_samples.sh -i $INSTALL_DIR -b $BUILD_DIR/cpp_samples
|
||||
env:
|
||||
CMAKE_COMPILE_WARNING_AS_ERROR: 'ON'
|
||||
|
||||
- name: Build cpp samples - Clang
|
||||
if: runner.os == 'Linux'
|
||||
run: |
|
||||
apt-get install -y clang
|
||||
$INSTALL_DIR/samples/cpp/build_samples.sh -i $INSTALL_DIR -b $BUILD_DIR/cpp_samples_clang
|
||||
env:
|
||||
CMAKE_COMPILE_WARNING_AS_ERROR: 'ON'
|
||||
CC: clang
|
||||
CXX: clang++
|
||||
|
||||
- name: Build c samples
|
||||
run: $INSTALL_DIR/samples/c/build_samples.sh -i $INSTALL_DIR -b $BUILD_DIR/c_samples
|
||||
env:
|
||||
CMAKE_COMPILE_WARNING_AS_ERROR: 'ON'
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: Samples tests
|
||||
if: fromJSON(inputs.affected-components).samples.test
|
||||
run: |
|
||||
export WORKSPACE=$INSTALL_DIR
|
||||
export IE_APP_PATH=$INSTALL_DIR/samples_bin
|
||||
export IE_APP_PYTHON_PATH=$INSTALL_DIR/samples/python
|
||||
export SHARE=$INSTALL_TEST_DIR/smoke_tests/samples_smoke_tests_data
|
||||
|
||||
python3 -m pip install --ignore-installed PyYAML -r $INSTALL_TEST_DIR/smoke_tests/requirements.txt
|
||||
export LD_LIBRARY_PATH=${IE_APP_PATH}:$LD_LIBRARY_PATH
|
||||
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
python3 -m pytest -sv $INSTALL_TEST_DIR/smoke_tests \
|
||||
--env_conf $INSTALL_TEST_DIR/smoke_tests/env_config.yml \
|
||||
--junitxml=$INSTALL_TEST_DIR/TEST-SamplesSmokeTests.xml
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-samples
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'warn'
|
||||
113
.github/workflows/job_tensorflow_hub_models_tests.yml
vendored
Normal file
113
.github/workflows/job_tensorflow_hub_models_tests.yml
vendored
Normal file
@@ -0,0 +1,113 @@
|
||||
name: TensorFlow Hub Models tests
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
runner:
|
||||
description: 'Machine on which the tests would run'
|
||||
type: string
|
||||
required: true
|
||||
container:
|
||||
description: 'JSON to be converted to the value of the "container" configuration for the job'
|
||||
type: string
|
||||
required: false
|
||||
default: '{"image": null}'
|
||||
event:
|
||||
description: 'Event that triggered the workflow. E.g., "schedule" for nightly runs'
|
||||
type: string
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
TensorFlow_Hub_Models_Tests:
|
||||
name: TensorFlow Hub Models tests
|
||||
timeout-minutes: ${{ inputs.event == 'schedule' && 400 || 25 }}
|
||||
runs-on: ${{ inputs.runner }}
|
||||
container: ${{ fromJSON(inputs.container) }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
MODEL_HUB_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/model_hub_tests
|
||||
steps:
|
||||
|
||||
- name: Check sudo
|
||||
if: ${{ runner.os == 'Linux' }}
|
||||
run: if [ "$(id -u)" -eq 0 ]; then apt update && apt --assume-yes install sudo; fi
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "OPENVINO_REPO=$GITHUB_WORKSPACE/openvino" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
|
||||
echo "MODEL_HUB_TESTS_INSTALL_DIR=$GITHUB_WORKSPACE/install/tests/model_hub_tests" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -xzf openvino_package.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
pushd ${INSTALL_TEST_DIR}
|
||||
tar -xzf openvino_tests.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Install dependencies
|
||||
if: ${{ runner.os == 'Linux' }}
|
||||
run: |
|
||||
# install git (required to build pip deps from the sources)
|
||||
sudo apt-get install --assume-yes --no-install-recommends g++ git ca-certificates
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: '3.11'
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: ${{ contains(inputs.runner, 'aks') }}
|
||||
|
||||
- name: Install OpenVINO Python wheels
|
||||
run: python3 -m pip install ${INSTALL_DIR}/tools/openvino-*
|
||||
|
||||
- name: Install TF Hub tests requirements
|
||||
run: python3 -m pip install -r ${MODEL_HUB_TESTS_INSTALL_DIR}/tf_hub_tests/requirements.txt
|
||||
|
||||
- name: TensorFlow Hub Tests - TF FE
|
||||
run: |
|
||||
export PYTHONPATH=${MODEL_HUB_TESTS_INSTALL_DIR}:$PYTHONPATH
|
||||
python3 -m pytest ${MODEL_HUB_TESTS_INSTALL_DIR}/tf_hub_tests/ -m ${TYPE} --html=${INSTALL_TEST_DIR}/TEST-tf_hub_tf_fe.html --self-contained-html -v
|
||||
env:
|
||||
TYPE: ${{ inputs.event == 'schedule' && 'nightly' || 'precommit'}}
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-tensorflow-hub-models
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.html
|
||||
if-no-files-found: 'error'
|
||||
4
.github/workflows/labeler.yml
vendored
4
.github/workflows/labeler.yml
vendored
@@ -9,8 +9,10 @@ jobs:
|
||||
pull-requests: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/labeler@v4
|
||||
- uses: akladiev/labeler@v4.3.1
|
||||
with:
|
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||
configuration-path: '.github/labeler.yml'
|
||||
sync-labels: 'true'
|
||||
dot: 'true'
|
||||
non-matching-label: 'no-match-files'
|
||||
|
||||
1210
.github/workflows/linux.yml
vendored
1210
.github/workflows/linux.yml
vendored
File diff suppressed because it is too large
Load Diff
361
.github/workflows/linux_arm64.yml
vendored
Normal file
361
.github/workflows/linux_arm64.yml
vendored
Normal file
@@ -0,0 +1,361 @@
|
||||
name: Linux ARM64 (Ubuntu 20.04, Python 3.11)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- 'releases/**'
|
||||
|
||||
concurrency:
|
||||
# github.ref is not unique in post-commit
|
||||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux-arm
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
- name: Get affected components
|
||||
id: smart_ci
|
||||
uses: ./.github/actions/smart-ci
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
pr: ${{ github.event.number }}
|
||||
commit_sha: ${{ github.sha }}
|
||||
component_pattern: "category: (.*)"
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Show affected components
|
||||
run: |
|
||||
echo "${{ toJSON(steps.smart_ci.outputs.affected_components) }}"
|
||||
shell: bash
|
||||
|
||||
Build:
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: 'aks-linux-16-cores-arm'
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: sccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: sccache
|
||||
GITHUB_WORKSPACE: '/__w/openvino/openvino'
|
||||
OPENVINO_REPO: /__w/openvino/openvino/openvino
|
||||
OPENVINO_CONTRIB_REPO: /__w/openvino/openvino/openvino_contrib
|
||||
INSTALL_DIR: /__w/openvino/openvino/openvino_install
|
||||
INSTALL_TEST_DIR: /__w/openvino/openvino/tests_install
|
||||
DEVELOPER_PACKAGE_DIR: /__w/openvino/openvino/developer_package_install
|
||||
BUILD_DIR: /__w/openvino/openvino/openvino_build
|
||||
SCCACHE_AZURE_KEY_PREFIX: 'ubuntu20_aarch64_Release'
|
||||
ONNX_RUNTIME_UTILS: /__w/openvino/openvino/openvino/.ci/azure/ci_utils/onnxruntime
|
||||
if: "!fromJSON(needs.smart_ci.outputs.affected_components).docs_only"
|
||||
|
||||
steps:
|
||||
- name: Install git
|
||||
run: apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
submodules: 'true'
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Print system info
|
||||
#
|
||||
|
||||
- name: System info
|
||||
uses: ./openvino/.github/actions/system_info
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
# default-jdk - Java API
|
||||
apt install --assume-yes --no-install-recommends default-jdk
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.3
|
||||
with:
|
||||
version: "v0.5.4"
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||
should-setup-pip-paths: 'true'
|
||||
show-cache-info: 'true'
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
# For Python API: build and wheel packaging
|
||||
python3 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/wheel/requirements-dev.txt
|
||||
python3 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/src/compatibility/openvino/requirements-dev.txt
|
||||
|
||||
# For running ONNX frontend unit tests
|
||||
python3 -m pip install --force-reinstall -r ${OPENVINO_REPO}/src/frontends/onnx/tests/requirements.txt
|
||||
|
||||
# For running TensorFlow frontend unit tests
|
||||
python3 -m pip install -r ${OPENVINO_REPO}/src/frontends/tensorflow/tests/requirements.txt
|
||||
|
||||
# For running TensorFlow Lite frontend unit tests
|
||||
python3 -m pip install -r ${OPENVINO_REPO}/src/frontends/tensorflow_lite/tests/requirements.txt
|
||||
|
||||
# For running Paddle frontend unit tests
|
||||
python3 -m pip install -r ${OPENVINO_REPO}/src/frontends/paddle/tests/requirements.txt
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: CMake configure - OpenVINO
|
||||
run: |
|
||||
cmake \
|
||||
-G "${{ env.CMAKE_GENERATOR }}" \
|
||||
-DENABLE_CPPLINT=OFF \
|
||||
-DENABLE_NCC_STYLE=OFF \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DENABLE_SYSTEM_TBB=OFF \
|
||||
-DENABLE_SYSTEM_OPENCL=ON \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DCPACK_GENERATOR=TGZ \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=${{ env.CMAKE_CXX_COMPILER_LAUNCHER }} \
|
||||
-DCMAKE_C_COMPILER_LAUNCHER=${{ env.CMAKE_C_COMPILER_LAUNCHER }} \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
|
||||
- name: Clean sccache stats
|
||||
run: ${SCCACHE_PATH} --zero-stats
|
||||
|
||||
- name: Cmake build - OpenVINO
|
||||
run: cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
||||
- name: Show sccache stats
|
||||
run: ${SCCACHE_PATH} --show-stats
|
||||
|
||||
- name: Cmake install - OpenVINO
|
||||
run: |
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -P ${BUILD_DIR}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_TEST_DIR} -DCOMPONENT=tests -P ${BUILD_DIR}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${DEVELOPER_PACKAGE_DIR} -DCOMPONENT=developer_package -P ${BUILD_DIR}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -DCOMPONENT=python_wheels -P ${BUILD_DIR}/cmake_install.cmake
|
||||
|
||||
- name: Pack Artifacts
|
||||
run: |
|
||||
|
||||
# Add the ONNX Runtime version and skip tests list to the archive to use in the ONNX Runtime Job
|
||||
# w/o the need to checkout repository
|
||||
|
||||
cp -R ${ONNX_RUNTIME_UTILS} ${INSTALL_DIR}
|
||||
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -czvf ${BUILD_DIR}/openvino_package.tar.gz *
|
||||
popd
|
||||
|
||||
pushd ${DEVELOPER_PACKAGE_DIR}
|
||||
tar -czvf ${BUILD_DIR}/openvino_developer_package.tar.gz *
|
||||
popd
|
||||
|
||||
pushd ${INSTALL_TEST_DIR}
|
||||
tar -czvf ${BUILD_DIR}/openvino_tests.tar.gz *
|
||||
popd
|
||||
|
||||
- name: Build Debian packages
|
||||
if: ${{ 'false' }}
|
||||
run: |
|
||||
/usr/bin/python3.8 -m pip install -U pip
|
||||
/usr/bin/python3.8 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/wheel/requirements-dev.txt
|
||||
/usr/bin/python3.8 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/src/compatibility/openvino/requirements-dev.txt
|
||||
cmake -UPYTHON* \
|
||||
-DENABLE_PYTHON_PACKAGING=ON \
|
||||
-DENABLE_TESTS=OFF \
|
||||
-DPython3_EXECUTABLE=/usr/bin/python3.8 \
|
||||
-DCPACK_GENERATOR=DEB \
|
||||
${BUILD_DIR}
|
||||
cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --target package
|
||||
|
||||
- name: Cmake & Build - OpenVINO Contrib
|
||||
run: |
|
||||
cmake \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" \
|
||||
-DOPENVINO_EXTRA_MODULES=${OPENVINO_CONTRIB_REPO}/modules \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
||||
#
|
||||
# Upload build artifacts
|
||||
#
|
||||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino developer package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_developer_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_developer_package.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino debian packages
|
||||
if: ${{ 'false' }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_debian_packages
|
||||
path: ${{ env.BUILD_DIR }}/*.deb
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
Debian_Packages:
|
||||
name: Debian Packages
|
||||
needs: Build
|
||||
if: ${{ 'false' }}
|
||||
uses: ./.github/workflows/job_debian_packages.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
|
||||
Samples:
|
||||
needs: [ Build, Smart_CI ]
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).samples
|
||||
uses: ./.github/workflows/job_samples_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
ONNX_Runtime:
|
||||
name: ONNX Runtime Integration
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).ONNX_RT
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_onnx_runtime.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"], "options": "-e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING"}'
|
||||
sccache-azure-key-prefix: 'ubuntu20_aarch64_onnxruntime'
|
||||
|
||||
CXX_Unit_Tests:
|
||||
name: C++ unit tests
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cxx_unit_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
Python_Unit_Tests:
|
||||
name: Python unit tests
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_python_unit_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cpu_functional_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
|
||||
TensorFlow_Hub_Models_Tests:
|
||||
name: TensorFlow Hub Models tests
|
||||
if: ${{ 'false' }} # TODO: Enable once the dependencies are ready for arm (no tensorflow-text available for arm from PyPI)
|
||||
# if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test ||
|
||||
# fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_tensorflow_hub_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04"}'
|
||||
event: ${{ github.event_name }}
|
||||
|
||||
TensorFlow_Hub_Performance_Models_Tests:
|
||||
name: TensorFlow Hub Performance Models tests
|
||||
if: ${{ 'false' }} # TODO: Enable once the dependencies are ready for arm (no tensorflow-text available for arm from PyPI)
|
||||
# if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test ||
|
||||
# fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_tensorflow_hub_performance_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04"}'
|
||||
event: ${{ github.event_name }}
|
||||
|
||||
PyTorch_Models_Tests:
|
||||
name: PyTorch Models tests
|
||||
if: ${{ 'false' }} # TODO: Enable once the dependencies are ready for arm (no tensorflow-text available for arm from PyPI)
|
||||
# if: fromJSON(needs.smart_ci.outputs.affected_components).PyTorch_FE.test
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_pytorch_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04"}'
|
||||
event: ${{ github.event_name }}
|
||||
|
||||
Overall_Status:
|
||||
name: ci/gha_overall_status_linux_arm64
|
||||
needs: [Smart_CI, Build, Debian_Packages, Samples, ONNX_Runtime, CXX_Unit_Tests, Python_Unit_Tests, CPU_Functional_Tests,
|
||||
TensorFlow_Hub_Models_Tests, TensorFlow_Hub_Performance_Models_Tests, PyTorch_Models_Tests]
|
||||
if: ${{ always() }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check status of all jobs
|
||||
if: >-
|
||||
${{
|
||||
contains(needs.*.result, 'failure') ||
|
||||
contains(needs.*.result, 'cancelled')
|
||||
}}
|
||||
run: exit 1
|
||||
170
.github/workflows/linux_conditional_compilation.yml
vendored
170
.github/workflows/linux_conditional_compilation.yml
vendored
@@ -2,23 +2,10 @@ name: Linux Static CC (Ubuntu 22.04, Python 3.11, Clang)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
push:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
branches:
|
||||
- master
|
||||
- 'releases/**'
|
||||
|
||||
concurrency:
|
||||
# github.ref is not unique in post-commit
|
||||
@@ -30,16 +17,40 @@ env:
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
- name: Get affected components
|
||||
id: smart_ci
|
||||
uses: ./.github/actions/smart-ci
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
pr: ${{ github.event.number }}
|
||||
commit_sha: ${{ github.sha }}
|
||||
component_pattern: "category: (.*)"
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg,*/layer_tests_summary/*,*/conformance/*'
|
||||
|
||||
Build:
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
@@ -50,10 +61,12 @@ jobs:
|
||||
GITHUB_WORKSPACE: '/__w/openvino/openvino'
|
||||
OPENVINO_REPO: /__w/openvino/openvino/openvino
|
||||
INSTALL_DIR: /__w/openvino/openvino/openvino_install
|
||||
INSTALL_TEST_DIR: /__w/openvino/openvino/tests_install
|
||||
BUILD_DIR: /__w/openvino/openvino/openvino_build
|
||||
SELECTIVE_BUILD_STAT_DIR: /__w/openvino/openvino/selective_build_stat
|
||||
MODELS_PATH: /__w/openvino/openvino/testdata
|
||||
SCCACHE_AZURE_KEY_PREFIX: ubuntu22_x86_64_itt_clang_Release
|
||||
if: "!needs.smart_ci.outputs.skip_workflow"
|
||||
|
||||
steps:
|
||||
- name: Install git
|
||||
@@ -100,15 +113,13 @@ jobs:
|
||||
with:
|
||||
version: "v0.5.4"
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Setup pip cache dir
|
||||
run: |
|
||||
PIP_VER=$(python3 -c "import pip; print(pip.__version__)")
|
||||
echo "Using pip version: ${PIP_VER}"
|
||||
echo "PIP_CACHE_DIR=${PIP_CACHE_PATH}/${PIP_VER}" >> $GITHUB_ENV
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||
should-setup-pip-paths: 'true'
|
||||
self-hosted-runner: 'true'
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
@@ -154,7 +165,9 @@ jobs:
|
||||
run: ${SCCACHE_PATH} --show-stats
|
||||
|
||||
- name: Cmake install - OpenVINO
|
||||
run: cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -P ${BUILD_DIR}/cmake_install.cmake
|
||||
run: |
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -P ${BUILD_DIR}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_TEST_DIR} -DCOMPONENT=tests -P ${BUILD_DIR}/cmake_install.cmake
|
||||
|
||||
- name: Build C++ samples - OpenVINO build tree
|
||||
run: |
|
||||
@@ -180,13 +193,26 @@ jobs:
|
||||
tar -czvf ${BUILD_DIR}/openvino_selective_build_stat.tar.gz *
|
||||
popd
|
||||
|
||||
pushd ${OPENVINO_REPO}
|
||||
tar -czvf ${BUILD_DIR}/openvino_tests.tar.gz \
|
||||
bin/intel64/Release/ov_cpu_func_tests \
|
||||
src/tests/test_utils/functional_test_utils/layer_tests_summary/* \
|
||||
scripts/install_dependencies/*
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -czvf ${BUILD_DIR}/openvino_package.tar.gz \
|
||||
install_dependencies/install_openvino_dependencies.sh
|
||||
popd
|
||||
|
||||
pushd ${INSTALL_TEST_DIR}
|
||||
tar -czvf ${BUILD_DIR}/openvino_tests.tar.gz \
|
||||
tests/ov_cpu_func_tests \
|
||||
tests/libtemplate_extension.so \
|
||||
tests/functional_test_utils/layer_tests_summary/*
|
||||
popd
|
||||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload selective build statistics package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
@@ -210,11 +236,11 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
@@ -246,7 +272,7 @@ jobs:
|
||||
ref: 'master'
|
||||
|
||||
- name: Download selective build statistics package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_selective_build_stat
|
||||
path: ${{ env.SELECTIVE_BUILD_STAT_DIR }}
|
||||
@@ -301,65 +327,23 @@ jobs:
|
||||
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
needs: Build
|
||||
timeout-minutes: 25
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-8-cores
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
INSTALL_TEST_DIR: /__w/openvino/openvino/install/tests
|
||||
PARALLEL_TEST_SCRIPT: /__w/openvino/openvino/install/tests/src/tests/test_utils/functional_test_utils/layer_tests_summary/run_parallel.py
|
||||
PARALLEL_TEST_CACHE: /__w/openvino/openvino/install/tests/test_cache.lst
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cpu_functional_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-8-cores-32gb'
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04'
|
||||
|
||||
Overall_Status:
|
||||
name: ci/gha_overall_status_linux_cc
|
||||
needs: [Smart_CI, Build, CC_Build, CPU_Functional_Tests]
|
||||
if: ${{ always() }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Extract OpenVINO tests package
|
||||
run: tar -xvzf ${INSTALL_TEST_DIR}/openvino_tests.tar.gz -C ${INSTALL_TEST_DIR}
|
||||
|
||||
- name: Install OpenVINO dependencies
|
||||
run: bash ${INSTALL_TEST_DIR}/scripts/install_dependencies/install_openvino_dependencies.sh -c=core -c=gpu -y
|
||||
|
||||
- name: Install 'actions/setup-python@v4' dependencies
|
||||
run: apt-get install -y libssl3
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Install python dependencies for run_parallel.py
|
||||
run: python3 -m pip install -r ${INSTALL_TEST_DIR}/src/tests/test_utils/functional_test_utils/layer_tests_summary/requirements.txt
|
||||
|
||||
- name: Restore tests execution time
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-tests-functional-cpu-stamp
|
||||
|
||||
- name: Intel CPU plugin func tests (parallel)
|
||||
run: python3 ${PARALLEL_TEST_SCRIPT} -e ${INSTALL_TEST_DIR}/bin/intel64/Release/ov_cpu_func_tests -c ${PARALLEL_TEST_CACHE} -w ${INSTALL_TEST_DIR} -s suite -rf 0 -- --gtest_print_time=1 --gtest_filter=*smoke*
|
||||
timeout-minutes: 20
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-functional-cpu
|
||||
path: |
|
||||
${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/failed/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/crashed/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/hanged/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/interapted/*.log
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/disabled_tests.log
|
||||
if-no-files-found: 'error'
|
||||
- name: Check status of all jobs
|
||||
if: >-
|
||||
${{
|
||||
contains(needs.*.result, 'failure') ||
|
||||
contains(needs.*.result, 'cancelled')
|
||||
}}
|
||||
run: exit 1
|
||||
|
||||
63
.github/workflows/linux_riscv.yml
vendored
63
.github/workflows/linux_riscv.yml
vendored
@@ -5,21 +5,7 @@ on:
|
||||
- cron: '0 0 * * 3,6'
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
push:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
branches:
|
||||
- master
|
||||
- 'releases/**'
|
||||
@@ -30,16 +16,40 @@ concurrency:
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
- name: Get affected components
|
||||
id: smart_ci
|
||||
uses: ./.github/actions/smart-ci
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
pr: ${{ github.event.number }}
|
||||
commit_sha: ${{ github.sha }}
|
||||
component_pattern: "category: (.*)"
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg,*/layer_tests_summary/*,*/conformance/*'
|
||||
|
||||
Build:
|
||||
timeout-minutes: 30
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
- /mount:/mount
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja'
|
||||
@@ -48,10 +58,11 @@ jobs:
|
||||
OPENVINO_REPO: /__w/openvino/openvino/openvino
|
||||
OPENVINO_BUILD_DIR: /__w/openvino/openvino/openvino_build
|
||||
INSTALL_DIR: /__w/openvino/openvino/openvino_install
|
||||
CONAN_USER_HOME: /mount/caches/ccache/ubuntu22_riscv64_Release/.conan
|
||||
CCACHE_DIR: /mount/caches/ccache/ubuntu22_riscv64_Release
|
||||
CONAN_USER_HOME: /mount/caches/ccache/ubuntu22_riscv64_master_release/.conan
|
||||
CCACHE_DIR: /mount/caches/ccache/ubuntu22_riscv64_master_release
|
||||
CCACHE_TEMPDIR: /__w/openvino/openvino/ccache_temp
|
||||
CCACHE_MAXSIZE: 50G
|
||||
if: "!needs.smart_ci.outputs.skip_workflow"
|
||||
steps:
|
||||
- name: Install git
|
||||
run: apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
@@ -195,3 +206,17 @@ jobs:
|
||||
source ${OPENVINO_BUILD_DIR}/dependencies/deactivate_conanbuild.sh
|
||||
env:
|
||||
CMAKE_TOOLCHAIN_FILE: ${{ env.OPENVINO_BUILD_DIR }}/dependencies/conan_toolchain.cmake
|
||||
|
||||
Overall_Status:
|
||||
name: ci/gha_overall_status_linux_riscv
|
||||
needs: [Smart_CI, Build]
|
||||
if: ${{ always() }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check status of all jobs
|
||||
if: >-
|
||||
${{
|
||||
contains(needs.*.result, 'failure') ||
|
||||
contains(needs.*.result, 'cancelled')
|
||||
}}
|
||||
run: exit 1
|
||||
|
||||
687
.github/workflows/mac.yml
vendored
687
.github/workflows/mac.yml
vendored
@@ -33,27 +33,41 @@ env:
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
jobs:
|
||||
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
- name: Get affected components
|
||||
id: smart_ci
|
||||
uses: ./.github/actions/smart-ci
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
pr: ${{ github.event.number }}
|
||||
commit_sha: ${{ github.sha }}
|
||||
component_pattern: "category: (.*)"
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg'
|
||||
|
||||
Build:
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
strategy:
|
||||
max-parallel: 2
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- arhitecture: 'x86_64'
|
||||
machine: 'macos-13-large'
|
||||
macos_deployment_target: '10.12'
|
||||
- arhitecture: 'arm64'
|
||||
machine: 'macos-13-xlarge'
|
||||
macos_deployment_target: '11.0'
|
||||
runs-on: ${{ matrix.machine }}
|
||||
runs-on: 'macos-13-large'
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.macos_deployment_target }}
|
||||
MACOSX_DEPLOYMENT_TARGET: '10.12'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
@@ -88,9 +102,12 @@ jobs:
|
||||
- name: Install build dependencies
|
||||
run: brew install coreutils ninja scons
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: 'false'
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
@@ -122,9 +139,9 @@ jobs:
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
verbose: 2
|
||||
key: ${{ runner.os }}-${{ matrix.arhitecture }}-main
|
||||
key: ${{ runner.os }}-${{ runner.arch }}-main
|
||||
restore-keys: |
|
||||
${{ runner.os }}-${{ matrix.arhitecture }}-main
|
||||
${{ runner.os }}-${{ runner.arch }}-main
|
||||
|
||||
- name: CMake configure
|
||||
run: |
|
||||
@@ -181,7 +198,7 @@ jobs:
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_package_${{ matrix.arhitecture }}
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
@@ -189,625 +206,39 @@ jobs:
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_tests_${{ matrix.arhitecture }}
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
Samples:
|
||||
needs: Build
|
||||
timeout-minutes: 5
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
strategy:
|
||||
max-parallel: 2
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- arhitecture: 'x86_64'
|
||||
machine: 'macos-13'
|
||||
- arhitecture: 'arm64'
|
||||
machine: 'macos-13-xlarge'
|
||||
runs-on: ${{ matrix.machine }}
|
||||
env:
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
|
||||
steps:
|
||||
#
|
||||
# Initialize OpenVINO
|
||||
#
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_package_${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_tests_${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -xzf openvino_package.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
pushd ${INSTALL_TEST_DIR}
|
||||
tar -xzf openvino_tests.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
- name: Install dependencies
|
||||
run: brew install coreutils
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Build cpp samples
|
||||
run: ${INSTALL_DIR}/samples/cpp/build_samples.sh -i ${INSTALL_DIR} -b ${BUILD_DIR}/cpp_samples
|
||||
env:
|
||||
CMAKE_COMPILE_WARNING_AS_ERROR: 'ON'
|
||||
|
||||
- name: Build c samples
|
||||
run: ${INSTALL_DIR}/samples/c/build_samples.sh -i ${INSTALL_DIR} -b ${BUILD_DIR}/c_samples
|
||||
env:
|
||||
CMAKE_COMPILE_WARNING_AS_ERROR: 'ON'
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: Samples tests
|
||||
run: |
|
||||
export WORKSPACE=${INSTALL_DIR}
|
||||
export IE_APP_PATH=${INSTALL_DIR}/samples_bin
|
||||
export IE_APP_PYTHON_PATH=${INSTALL_DIR}/samples/python
|
||||
export SHARE=${INSTALL_TEST_DIR}/smoke_tests/samples_smoke_tests_data
|
||||
|
||||
python3 -m pip install --ignore-installed PyYAML -r ${INSTALL_TEST_DIR}/smoke_tests/requirements.txt
|
||||
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
python3 -m pytest -sv ${INSTALL_TEST_DIR}/smoke_tests \
|
||||
--env_conf ${INSTALL_TEST_DIR}/smoke_tests/env_config.yml \
|
||||
--junitxml=${INSTALL_TEST_DIR}/TEST-SamplesSmokeTests.xml
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-samples-${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'error'
|
||||
needs: [ Build, Smart_CI ]
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).samples
|
||||
uses: ./.github/workflows/job_samples_tests.yml
|
||||
with:
|
||||
runner: 'macos-13'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
CXX_Unit_Tests:
|
||||
name: C++ Unit tests
|
||||
needs: Build
|
||||
timeout-minutes: 20
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
strategy:
|
||||
max-parallel: 2
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- arhitecture: 'x86_64'
|
||||
machine: 'macos-13'
|
||||
- arhitecture: 'arm64'
|
||||
machine: 'macos-13-xlarge'
|
||||
runs-on: ${{ matrix.machine }}
|
||||
env:
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
|
||||
steps:
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_package_${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_tests_${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${{ env.INSTALL_DIR }}
|
||||
tar -xzf openvino_package.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_package.tar.gz || exit 1
|
||||
popd
|
||||
pushd ${{ env.INSTALL_TEST_DIR }}
|
||||
tar -xzf openvino_tests.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_tests.tar.gz || exit 1
|
||||
popd
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: OpenVINO Core Unit Tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_core_unit_tests --gtest_print_time=1 --gtest_filter=-*IE_GPU* \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-NGraphUT.xml
|
||||
|
||||
- name: OpenVINO Inference Functional Tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_inference_functional_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-InferenceFunc.xml
|
||||
|
||||
- name: OpenVINO Inference Unit Tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_inference_unit_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-InferenceUnit.xml
|
||||
|
||||
- name: Low Precision Transformations Tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
# Skips under Ticket: 122660
|
||||
skip_filter=${{ matrix.arhitecture == 'arm64' && '--gtest_filter=-*smoke_LPT/FoldFakeQuantizeInTransformations.CompareFunctions*' || '' }}
|
||||
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_lp_transformations_tests --gtest_print_time=1 "$skip_filter" \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-LpTransformations.xml
|
||||
|
||||
- name: OpenVINO Conditional compilation tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_conditional_compilation_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ConditionalCompilation.xml
|
||||
|
||||
- name: IR frontend tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_ir_frontend_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-IRFrontend.xml
|
||||
|
||||
- name: PaddlePaddle frontend tests
|
||||
if: ${{ 'false' }}
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/paddle_tests --gtest_print_time=1 --gtest_filter=*smoke* \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-PaddleTests.xml
|
||||
|
||||
- name: ONNX frontend tests
|
||||
if: ${{ matrix.arhitecture == 'x86_64' }} # Ticket for ARM64: 122663
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_onnx_frontend_tests --gtest_print_time=1 --gtest_filter=-*IE_GPU* \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ONNXFrontend.xml
|
||||
|
||||
- name: TensorFlow Common tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_common_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowCommonFrontend.xml
|
||||
|
||||
- name: TensorFlow frontend tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
# Skips under Ticket: 122666
|
||||
skip_filter=${{ matrix.arhitecture == 'arm64' && '--gtest_filter=-*CompileModelsTests.ModelWithSplitConvConcat*:*NgramCompilation*' || '' }}
|
||||
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_frontend_tests --gtest_print_time=1 "$skip_filter" \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowFrontend.xml
|
||||
|
||||
- name: TensorFlow Lite frontend tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_lite_frontend_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowLiteFrontend.xml
|
||||
|
||||
- name: Transformations func tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
# Skips under Ticket: 122668
|
||||
skip_filter=${{ matrix.arhitecture == 'arm64' && '--gtest_filter=-*TransformationTestsF.CompressQuantizeWeights*:*TransformationTests/CompressQuantizeWeightsTests.FusionTest*' || '' }}
|
||||
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_transformations_tests --gtest_print_time=1 "$skip_filter" \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-Transformations.xml
|
||||
|
||||
- name: Common test utils tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_util_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-commonUtilsTests.xml
|
||||
|
||||
- name: Snippets func tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_snippets_func_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-SnippetsFuncTests.xml
|
||||
|
||||
- name: CPU plugin unit tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_cpu_unit_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-CPUUnitTests.xml
|
||||
|
||||
- name: SubgraphsDumper tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/subgraphsDumperTests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-SubgraphsDumperTests.xml
|
||||
|
||||
- name: Template OpImpl tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/conformanceTests --gtest_print_time=1 --device=TEMPLATE --gtest_filter="*OpImpl*" \
|
||||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-TemplateOpImplTests.xml
|
||||
|
||||
- name: AUTO unit tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_auto_unit_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_unit_tests.xml
|
||||
|
||||
- name: AUTO func Tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_auto_func_tests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_func_tests.xml
|
||||
|
||||
- name: Template plugin func tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_template_func_tests --gtest_print_time=1 \
|
||||
--gtest_filter=*smoke* \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TemplateFuncTests.xml
|
||||
|
||||
- name: Inference Engine C API tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/InferenceEngineCAPITests --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-InferenceEngineCAPITests.xml
|
||||
|
||||
- name: OpenVINO C API tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_capi_test --gtest_print_time=1 \
|
||||
--gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OpenVINOCAPITests.xml
|
||||
|
||||
- name: AutoBatch unit tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_auto_batch_unit_tests --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_batch_unit_tests.xml
|
||||
|
||||
- name: AutoBatch func tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_auto_batch_func_tests --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_batch_func_tests.xml
|
||||
|
||||
- name: Proxy Plugin func tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVProxyTests.xml
|
||||
|
||||
- name: Hetero unit tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroUnitTests.xml
|
||||
|
||||
- name: Hetero func tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroFuncTests.xml
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-cpp-${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'error'
|
||||
name: C++ unit tests
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cxx_unit_tests.yml
|
||||
with:
|
||||
runner: 'macos-13'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
Python_Unit_Tests:
|
||||
name: Python unit tests
|
||||
needs: Build
|
||||
timeout-minutes: 55
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
strategy:
|
||||
max-parallel: 2
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- arhitecture: 'x86_64'
|
||||
machine: 'macos-13'
|
||||
- arhitecture: 'arm64'
|
||||
machine: 'macos-13-xlarge'
|
||||
runs-on: ${{ matrix.machine }}
|
||||
env:
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
OPENVINO_CONTRIB_REPO: ${{ github.workspace }}/openvino_contrib
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
LAYER_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/layer_tests
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_package_${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_tests_${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${{ env.INSTALL_DIR }}
|
||||
tar -xzf openvino_package.tar.gz -C ${{ env.INSTALL_DIR }}
|
||||
popd
|
||||
|
||||
pushd ${{ env.INSTALL_TEST_DIR }}
|
||||
tar -xzf openvino_tests.tar.gz -C ${{ env.INSTALL_DIR }}
|
||||
popd
|
||||
|
||||
- name: Install Python API tests dependencies
|
||||
run: |
|
||||
# For torchvision to OpenVINO preprocessing converter
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/src/openvino/preprocess/torchvision/requirements.txt
|
||||
|
||||
# TODO: replace with Python API tests requirements
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_dev.txt
|
||||
|
||||
- name: Install OpenVINO Python wheels
|
||||
run: |
|
||||
# Install the core OV wheel
|
||||
python3 -m pip install ${{ env.INSTALL_DIR }}/tools/openvino-*.whl
|
||||
|
||||
# mxnet is only available on x86_64
|
||||
extras_to_install="caffe,kaldi,onnx,tensorflow2,pytorch"
|
||||
if [[ "${{ matrix.arhitecture }}" == "x86_64" ]]; then
|
||||
extras_to_install="mxnet,$extras_to_install"
|
||||
fi
|
||||
|
||||
# Find and install OV dev wheel
|
||||
pushd ${{ env.INSTALL_DIR }}/tools
|
||||
ov_dev_wheel_name=$(find . -name 'openvino_dev*.whl')
|
||||
python3 -m pip install $ov_dev_wheel_name[$extras_to_install]
|
||||
popd
|
||||
|
||||
- name: Python API 1.0 Tests
|
||||
run: |
|
||||
python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/pyngraph \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-Pyngraph.xml \
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/pyngraph/tests_compatibility/test_onnx/test_zoo_models.py \
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/pyngraph/tests_compatibility/test_onnx/test_backend.py
|
||||
|
||||
- name: Python API 2.0 Tests
|
||||
run: |
|
||||
# For python imports to import pybind_mock_frontend
|
||||
export PYTHONPATH=${{ env.INSTALL_TEST_DIR }}:$PYTHONPATH
|
||||
# for 'template' extension
|
||||
export DYLD_LIBRARY_PATH=${{ env.INSTALL_TEST_DIR }}:$DYLD_LIBRARY_PATH
|
||||
|
||||
python3 -m pytest -sv ${{ env.INSTALL_TEST_DIR }}/pyopenvino \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-Pyngraph.xml \
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/pyopenvino/tests/test_utils/test_utils.py
|
||||
|
||||
- name: MO Python API Tests
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
# TODO: remove setupvars.sh from here; currently, it's used for 'test_utils' installed in '<package>/python/openvino'
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/mo_python_api_tests/ --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_mo_convert.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: OVC Python API Tests
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
# TODO: remove setupvars.sh from here; currently, it's used for 'test_utils' installed in '<package>/python/openvino'
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/ovc_python_api_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_ovc_convert.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: Model Optimizer unit tests
|
||||
run: |
|
||||
export PYTHONPATH=${{ env.INSTALL_TEST_DIR }}:$PYTHONPATH
|
||||
python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/mo/unit_tests \
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/mo/unit_tests/mo/front/mxnet \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-ModelOptimizer.xml
|
||||
|
||||
- name: PyTorch Layer Tests
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/pytorch_tests -m precommit --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-pytorch.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: ONNX Layer Tests
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/onnx_tests -m "not launch_only_if_manually_specified and precommit" --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-onnx.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - TF FE
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_tests/ --use_new_frontend -m precommit_tf_fe --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: TensorFlow 2 Layer Tests - TF FE
|
||||
if: ${{ 'false' }} # Ticket: 123322
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow2_keras_tests/ --use_new_frontend -m precommit_tf_fe --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf2_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - Legacy FE
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_tests/test_tf_Roll.py --ir_version=10 --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf_Roll.xml
|
||||
|
||||
- name: TensorFlow 2 Layer Tests - Legacy FE
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow2_keras_tests/test_tf2_keras_activation.py \
|
||||
--ir_version=11 --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf2_Activation.xml -k "sigmoid"
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow Lite Layer Tests - TFL FE
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_lite_tests/ --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tfl_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: Python ONNX operators tests
|
||||
if: ${{ 'false' }} # Ticket: 123325
|
||||
run: |
|
||||
# Skip test_onnx/test_zoo_models and test_onnx/test_backend due to long execution time - ONNX Model Zoo tests are run separately
|
||||
python3 -m pytest -sv ${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests -k 'not cuda' \
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-onnx_frontend.xml \
|
||||
--ignore=${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests/test_python/test_zoo_models.py
|
||||
|
||||
- name: Python Frontend tests
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
export PYTHONPATH=${{ env.OPENVINO_REPO }}/tools/mo/:${{ env.LAYER_TESTS_INSTALL_DIR }}:$PYTHONPATH
|
||||
# to allow 'libtest_builtin_extensions.so' to find 'libopenvino_onnx_frontend.so'
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/py_frontend_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_py_fontend.xml
|
||||
|
||||
# TODO: install to 'tests' component via cpack
|
||||
- name: OVC unit tests
|
||||
run: python3 -m pytest -s ${{ env.OPENVINO_REPO }}/tools/ovc/unit_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-OpenVinoConversion.xml
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-python-${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'error'
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_python_unit_tests.yml
|
||||
with:
|
||||
runner: 'macos-13'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
needs: Build
|
||||
timeout-minutes: 25
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
strategy:
|
||||
max-parallel: 2
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
# ticket: 122001
|
||||
# - arhitecture: 'x86_64'
|
||||
# machine: 'macos-13'
|
||||
- arhitecture: 'arm64'
|
||||
machine: 'macos-13-xlarge'
|
||||
runs-on: ${{ matrix.machine }}
|
||||
env:
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
|
||||
steps:
|
||||
- name: Create Directories
|
||||
run: mkdir -p ${{ env.INSTALL_DIR }} ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_package_${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_tests_${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd ${{ env.INSTALL_DIR }}
|
||||
tar -xzf openvino_package.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_package.tar.gz
|
||||
popd
|
||||
pushd ${{ env.INSTALL_TEST_DIR }}
|
||||
tar -xzf openvino_tests.tar.gz -C ${{ env.INSTALL_DIR }} && rm openvino_tests.tar.gz
|
||||
popd
|
||||
|
||||
- name: CPU plugin func tests
|
||||
run: |
|
||||
source ${{ env.INSTALL_DIR }}/setupvars.sh
|
||||
|
||||
# Skips under Ticket: 122769
|
||||
skip_filter=${{ matrix.arhitecture == 'arm64' && '--gtest_filter=-*smoke_nonzero/NonZeroLayerTest.Inference/IS*:*smoke_NormalizeL2_*:*Extension.XmlModelWithExtensionFromDSO*:*Extension.OnnxModelWithExtensionFromDSO*:*ONNXQuantizedModels/QuantizedModelsTests.MaxPool*:*ONNXQuantizedModels/QuantizedModelsTests.Convolution*:**' || '' }}
|
||||
|
||||
${{ env.INSTALL_TEST_DIR }}/ov_cpu_func_tests --gtest_print_time=1 --gtest_filter=*smoke* "$skip_filter" --gtest_output=xml:"${{ env.INSTALL_TEST_DIR }}/TEST-CPUFuncTests.xml"
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
if: ${{ always() }}
|
||||
with:
|
||||
name: test-results-functional-cpu-${{ matrix.arhitecture }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/TEST*.xml
|
||||
if-no-files-found: 'error'
|
||||
# if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
if: ${{ 'false' }} # Ticket: 122001
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cpu_functional_tests.yml
|
||||
with:
|
||||
runner: 'macos-13'
|
||||
|
||||
241
.github/workflows/mac_arm64.yml
vendored
Normal file
241
.github/workflows/mac_arm64.yml
vendored
Normal file
@@ -0,0 +1,241 @@
|
||||
name: macOS ARM64 (Python 3.11)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# at 00:00 on workdays
|
||||
- cron: '0 0 * * 1,2,3,4,5'
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
# - 'releases/**'
|
||||
|
||||
concurrency:
|
||||
# github.ref is not unique in post-commit
|
||||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-mac-arm64
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
- name: Get affected components
|
||||
id: smart_ci
|
||||
uses: ./.github/actions/smart-ci
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
pr: ${{ github.event.number }}
|
||||
commit_sha: ${{ github.sha }}
|
||||
component_pattern: "category: (.*)"
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg'
|
||||
|
||||
Build:
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: 'macos-13-xlarge'
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
MACOSX_DEPLOYMENT_TARGET: '11.0'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: ccache
|
||||
CMAKE_C_COMPILER_LAUNCHER: ccache
|
||||
OPENVINO_REPO: ${{ github.workspace }}/openvino
|
||||
OPENVINO_CONTRIB_REPO: ${{ github.workspace }}/openvino_contrib
|
||||
INSTALL_DIR: ${{ github.workspace }}/openvino_install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/tests_install
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: 'openvino_contrib'
|
||||
|
||||
#
|
||||
# Print system info
|
||||
#
|
||||
|
||||
- name: System info
|
||||
uses: ./openvino/.github/actions/system_info
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: brew install coreutils ninja scons
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: 'false'
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
# For Python API
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/wheel/requirements-dev.txt
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/requirements.txt
|
||||
|
||||
# For running Python API tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/src/compatibility/openvino/requirements-dev.txt
|
||||
|
||||
# For running ONNX frontend unit tests
|
||||
python3 -m pip install --force-reinstall -r ${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests/requirements.txt
|
||||
|
||||
# For running TensorFlow frontend unit tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/tensorflow/tests/requirements.txt
|
||||
|
||||
# For running Paddle frontend unit tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/paddle/tests/requirements.txt
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
verbose: 2
|
||||
key: ${{ runner.os }}-${{ runner.arch }}-main
|
||||
restore-keys: |
|
||||
${{ runner.os }}-${{ runner.arch }}-main
|
||||
|
||||
- name: CMake configure
|
||||
run: |
|
||||
cmake \
|
||||
-G "${{ env.CMAKE_GENERATOR }}" \
|
||||
-DENABLE_CPPLINT=OFF \
|
||||
-DENABLE_NCC_STYLE=OFF \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=OFF \
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=${{ env.CMAKE_CXX_COMPILER_LAUNCHER }} \
|
||||
-DCMAKE_C_COMPILER_LAUNCHER=${{ env.CMAKE_C_COMPILER_LAUNCHER }} \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Cmake build - OpenVINO
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
||||
|
||||
- name: Cmake install - OpenVINO
|
||||
run: |
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_TEST_DIR }} -DCOMPONENT=tests -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -DCOMPONENT=python_wheels -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
|
||||
- name: Pack Artifacts
|
||||
run: |
|
||||
pushd ${{ env.INSTALL_DIR }}
|
||||
tar -czvf ${{ env.BUILD_DIR }}/openvino_package.tar.gz *
|
||||
popd
|
||||
|
||||
pushd ${{ env.INSTALL_TEST_DIR }}
|
||||
tar -czvf ${{ env.BUILD_DIR }}/openvino_tests.tar.gz *
|
||||
popd
|
||||
|
||||
- name: Cmake & Build - OpenVINO Contrib
|
||||
run: |
|
||||
cmake \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DBUILD_java_api=OFF \
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" \
|
||||
-DOPENVINO_EXTRA_MODULES=${{ env.OPENVINO_CONTRIB_REPO }}/modules \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
||||
#
|
||||
# Upload build artifacts
|
||||
#
|
||||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
Samples:
|
||||
needs: Build
|
||||
uses: ./.github/workflows/job_samples_tests.yml
|
||||
with:
|
||||
runner: 'macos-13-xlarge'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
CXX_Unit_Tests:
|
||||
name: C++ unit tests
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cxx_unit_tests.yml
|
||||
with:
|
||||
runner: 'macos-13-xlarge'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
Python_Unit_Tests:
|
||||
name: Python unit tests
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_python_unit_tests.yml
|
||||
with:
|
||||
runner: 'macos-13-xlarge'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cpu_functional_tests.yml
|
||||
with:
|
||||
runner: 'macos-13-xlarge'
|
||||
2
.github/workflows/mo.yml
vendored
2
.github/workflows/mo.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v4
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.10'
|
||||
|
||||
|
||||
2
.github/workflows/py_checks.yml
vendored
2
.github/workflows/py_checks.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v4
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.8'
|
||||
|
||||
|
||||
2
.github/workflows/stale_prs_and_issues.yml
vendored
2
.github/workflows/stale_prs_and_issues.yml
vendored
@@ -12,7 +12,7 @@ jobs:
|
||||
stale:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@v8
|
||||
- uses: actions/stale@v9
|
||||
with:
|
||||
stale-issue-message: 'This issue will be closed in a week because of 9 months of no activity.'
|
||||
stale-pr-message: 'This PR will be closed in a week because of 2 weeks of no activity.'
|
||||
|
||||
4
.github/workflows/webassembly.yml
vendored
4
.github/workflows/webassembly.yml
vendored
@@ -31,11 +31,11 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: emscripten/emsdk
|
||||
volumes:
|
||||
- /mount/caches:/mount/caches
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
|
||||
318
.github/workflows/windows.yml
vendored
318
.github/workflows/windows.yml
vendored
@@ -1,43 +1,51 @@
|
||||
name: Windows (VS 2019, Python 3.11)
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# at 00:00 on workdays
|
||||
- cron: '0 0 * * 1,2,3,4,5'
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- 'releases/**'
|
||||
concurrency:
|
||||
# github.ref is not unique in post-commit
|
||||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-windows
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/win
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
- name: Get affected components
|
||||
id: smart_ci
|
||||
uses: ./.github/actions/smart-ci
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
pr: ${{ github.event.number }}
|
||||
commit_sha: ${{ github.sha }}
|
||||
component_pattern: "category: (.*)"
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg,*/layer_tests_summary/*,*/conformance/*'
|
||||
|
||||
Build:
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 180
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-2019-16-core
|
||||
runs-on: aks-win-16-cores-32gb
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
@@ -48,6 +56,10 @@ jobs:
|
||||
INSTALL_DIR: "${{ github.workspace }}\\openvino_install"
|
||||
INSTALL_TEST_DIR: "${{ github.workspace }}\\tests_install"
|
||||
BUILD_DIR: "${{ github.workspace }}\\openvino_build"
|
||||
# TODO: specify version of compiler here
|
||||
SCCACHE_AZURE_KEY_PREFIX: windows2022_x86_64_Release
|
||||
if: "!needs.smart_ci.outputs.skip_workflow"
|
||||
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
@@ -73,9 +85,14 @@ jobs:
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||
should-setup-pip-paths: 'true'
|
||||
self-hosted-runner: 'true'
|
||||
show-cache-info: 'true'
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
@@ -92,9 +109,18 @@ jobs:
|
||||
# For running TensorFlow Lite frontend unit tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/tensorflow_lite/tests/requirements.txt
|
||||
|
||||
# Disabled because of CVS-95904
|
||||
# For running Paddle frontend unit tests
|
||||
# python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/paddle/tests/requirements.txt
|
||||
|
||||
# For getting rid of SSL issues during model downloading for unit tests
|
||||
python3 -m pip install certifi
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.3
|
||||
with:
|
||||
version: "v0.5.4"
|
||||
|
||||
- name: Install build dependencies
|
||||
run: choco install --no-progress ninja
|
||||
|
||||
@@ -105,18 +131,8 @@ jobs:
|
||||
- name: Configure Developer Command Prompt for Microsoft Visual C++
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
|
||||
- name: Setup sccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
variant: sccache
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
append-timestamp: true
|
||||
key: ${{ github.job }}-${{ runner.os }}-common
|
||||
restore-keys: |
|
||||
${{ github.job }}-${{ runner.os }}-common
|
||||
- name: Set SSL_CERT_FILE for model downloading for unit tests
|
||||
run: echo SSL_CERT_FILE=$(python3 -m certifi) >> $env:GITHUB_ENV
|
||||
|
||||
- name: CMake configure
|
||||
run: |
|
||||
@@ -134,9 +150,15 @@ jobs:
|
||||
-S ${{ env.OPENVINO_REPO }} `
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Clean sccache stats
|
||||
run: '& "$Env:SCCACHE_PATH" --zero-stats'
|
||||
|
||||
- name: Cmake build - OpenVINO
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --verbose
|
||||
|
||||
- name: Show sccache stats
|
||||
run: '& "$Env:SCCACHE_PATH" --show-stats'
|
||||
|
||||
- name: Cmake install - OpenVINO
|
||||
run: |
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
@@ -187,13 +209,15 @@ jobs:
|
||||
if-no-files-found: 'error'
|
||||
|
||||
Samples:
|
||||
needs: Build
|
||||
timeout-minutes: 10
|
||||
needs: [Build, Smart_CI]
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).samples
|
||||
timeout-minutes: 20
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-2019
|
||||
runs-on: aks-win-4-cores-8gb
|
||||
env:
|
||||
OPENVINO_REPO: "${{ github.workspace }}\\openvino"
|
||||
INSTALL_DIR: "${{ github.workspace }}\\install"
|
||||
INSTALL_TEST_DIR: "${{ github.workspace }}\\install\\tests"
|
||||
SAMPLES_INSTALL_DIR: "${{ github.workspace }}\\install\\samples"
|
||||
@@ -201,13 +225,13 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
@@ -221,9 +245,20 @@ jobs:
|
||||
Expand-Archive openvino_tests.zip -DestinationPath "${{ env.INSTALL_DIR }}"
|
||||
popd
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: 'true'
|
||||
|
||||
- name: Build cpp samples
|
||||
run: |
|
||||
@@ -256,12 +291,12 @@ jobs:
|
||||
|
||||
Python_Unit_Tests:
|
||||
name: Python unit tests
|
||||
needs: Build
|
||||
needs: [Build, Smart_CI]
|
||||
timeout-minutes: 75
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-2019
|
||||
runs-on: aks-win-8-cores-16gb
|
||||
env:
|
||||
OPENVINO_REPO: "${{ github.workspace }}\\openvino"
|
||||
OPENVINO_CONTRIB_REPO: "${{ github.workspace }}\\openvino_contrib"
|
||||
@@ -272,13 +307,13 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
@@ -292,22 +327,21 @@ jobs:
|
||||
Expand-Archive openvino_tests.zip -DestinationPath "${{ env.INSTALL_DIR }}"
|
||||
popd
|
||||
|
||||
- name: Clone OpenVINO
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Install Python API tests dependencies
|
||||
run: |
|
||||
# For torchvision to OpenVINO preprocessing converter
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/bindings/python/src/openvino/preprocess/torchvision/requirements.txt
|
||||
|
||||
# TODO: replace with Python API tests requirements
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/tools/mo/requirements_dev.txt
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: 'true'
|
||||
|
||||
- name: Install OpenVINO Python wheels
|
||||
run: |
|
||||
@@ -319,133 +353,153 @@ jobs:
|
||||
$ovDevWheelPath=Get-ChildItem -Path "${{ env.INSTALL_DIR }}\tools" -Filter openvino_dev*.whl | % { $_.FullName }
|
||||
python3 -m pip install "$ovDevWheelPath[mxnet,caffe,kaldi,onnx,tensorflow2,pytorch]"
|
||||
|
||||
- name: Install Python API tests dependencies
|
||||
run: |
|
||||
# To enable pytest parallel features
|
||||
python3 -m pip install pytest-xdist[psutil]
|
||||
|
||||
# For torchvision to OpenVINO preprocessing converter
|
||||
python3 -m pip install -r ${{ env.INSTALL_TEST_DIR }}/python/preprocess/torchvision/requirements.txt
|
||||
|
||||
# TODO: replace with Python API tests requirements
|
||||
python3 -m pip install -r ${{ env.INSTALL_TEST_DIR }}/mo/requirements_dev.txt
|
||||
|
||||
- name: Python API 1.0 Tests
|
||||
#if: fromJSON(needs.smart_ci.outputs.affected_components).Python_API.test # Ticket: 127101
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/pyngraph ${{ env.PYTHON_STATIC_ARGS }} --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-Pyngraph.xml --ignore=${{ env.INSTALL_TEST_DIR }}/pyngraph/tests_compatibility/test_onnx/test_zoo_models.py
|
||||
|
||||
- name: Python API 2.0 Tests
|
||||
#if: fromJSON(needs.smart_ci.outputs.affected_components).Python_API.test # Ticket: 127101
|
||||
shell: cmd
|
||||
run: |
|
||||
set PYTHONPATH=${{ env.LAYER_TESTS_INSTALL_DIR }};%PYTHONPATH%
|
||||
python3 -m pytest -sv ${{ env.INSTALL_TEST_DIR }}/pyopenvino ${{ env.PYTHON_STATIC_ARGS }} --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-Pyngraph.xml --ignore=${{ env.INSTALL_TEST_DIR }}/pyopenvino/tests/test_utils/test_utils.py
|
||||
|
||||
- name: Model Optimizer UT
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).MO.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/mo/unit_tests --ignore=${{ env.INSTALL_TEST_DIR }}/mo/unit_tests/mo/front/mxnet --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-ModelOptimizer.xml
|
||||
|
||||
- name: Install Python Layer tests dependencies
|
||||
run: |
|
||||
# layer test requirements
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
|
||||
# Ticket - 115085
|
||||
- name: PyTorch Layer Tests
|
||||
if: ${{ 'false' }}
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/pytorch_tests -m precommit --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-pytorch.xml
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/pytorch_tests -n logical -m precommit --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-pytorch.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: ONNX Layer Tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).ONNX_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
|
||||
:: requires 'unit_tests' from 'tools/mo'
|
||||
set PYTHONPATH=${{ env.OPENVINO_REPO }}\tools\mo;${{ env.LAYER_TESTS_INSTALL_DIR }};%PYTHONPATH%
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/onnx_tests -m "not launch_only_if_manually_specified and precommit" --junitxml=${INSTALL_TEST_DIR}/TEST-onnx.xml
|
||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/onnx_tests -n logical -m "not launch_only_if_manually_specified and precommit" --junitxml=${INSTALL_TEST_DIR}/TEST-onnx.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - TF FE
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
|
||||
:: requires 'unit_tests' from 'tools/mo'
|
||||
set PYTHONPATH=${{ env.OPENVINO_REPO }}\tools\mo;${{ env.LAYER_TESTS_INSTALL_DIR }};%PYTHONPATH%
|
||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_tests/ --use_new_frontend -m precommit_tf_fe --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow 2 Layer Tests - TF FE
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
|
||||
:: requires 'unit_tests' from 'tools/mo'
|
||||
set PYTHONPATH=${{ env.OPENVINO_REPO }}\tools\mo;${{ env.LAYER_TESTS_INSTALL_DIR }};%PYTHONPATH%
|
||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\mo;%PYTHONPATH%
|
||||
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow2_keras_tests/ --use_new_frontend -m precommit_tf_fe --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf2_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
|
||||
- name: TensorFlow 1 Layer Tests - Legacy FE
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_tests/test_tf_Roll.py --ir_version=10 --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf_Roll.xml
|
||||
|
||||
- name: TensorFlow 2 Layer Tests - Legacy FE
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow2_keras_tests/test_tf2_keras_activation.py --ir_version=11 --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tf2_Activation.xml -k "sigmoid"
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: TensorFlow Lite Layer Tests - TFL FE
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/tensorflow_lite_tests/ --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-tfl_fe.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: Python ONNX operators tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).Python_API.test ||
|
||||
fromJSON(needs.smart_ci.outputs.affected_components).ONNX_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
:: Skip test_onnx/test_zoo_models and test_onnx/test_backend due to long execution time - ONNX Model Zoo tests are run separately
|
||||
python3 -m pytest ${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests -k "not cuda" ^
|
||||
python3 -m pytest ${{ env.INSTALL_TEST_DIR }}/onnx -k "not cuda" ^
|
||||
--junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-onnx_frontend.xml ^
|
||||
--ignore=${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests/test_python/test_zoo_models.py
|
||||
--ignore=${{ env.INSTALL_TEST_DIR }}/onnx/test_python/test_zoo_models.py
|
||||
|
||||
- name: MO Python API Tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).MO.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
:: Used for 'test_utils' installed in '<test_package>\python\openvino\test_utils'
|
||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\python\openvino\test_utils;${{ env.INSTALL_TEST_DIR }}\python;%PYTHONPATH%
|
||||
|
||||
:: TODO: remove setupvars.bat from here; currently, it's used for 'test_utils' installed in '<package>/python/openvino'
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/mo_python_api_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_mo_convert.xml
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/mo_python_api_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_mo_convert.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: OVC Python API Tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).MO.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
:: Used for 'test_utils' installed in '<test_package>\python\openvino\test_utils'
|
||||
set PYTHONPATH=${{ env.INSTALL_TEST_DIR }}\python\openvino\test_utils;${{ env.INSTALL_TEST_DIR }}\python;%PYTHONPATH%
|
||||
|
||||
:: TODO: remove setupvars.sh from here; currently, it's used for 'test_utils' installed in '<package>/python/openvino'
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/ovc_python_api_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_ovc_convert.xml
|
||||
:: Skip test ticket: 126319
|
||||
python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/ovc_python_api_tests -k "not test_ovc_tool_non_existng_output_dir" --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_ovc_convert.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
TEST_PRECISION: FP16
|
||||
|
||||
- name: Python Frontend tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).PyTorch_FE.test ||
|
||||
fromJSON(needs.smart_ci.outputs.affected_components).PDPD_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
python3 -m pip install -r ${{ env.LAYER_TESTS_INSTALL_DIR }}/requirements.txt
|
||||
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && python3 -m pytest ${{ env.LAYER_TESTS_INSTALL_DIR }}/py_frontend_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-test_py_fontend.xml
|
||||
|
||||
# TODO: install to 'tests' component via cpack
|
||||
- name: OVC unit tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).MO.test
|
||||
shell: cmd
|
||||
run: python3 -m pytest -s ${{ env.OPENVINO_REPO }}/tools/ovc/unit_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-OpenVinoConversion.xml
|
||||
run: python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/ovc/unit_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-OpenVinoConversion.xml
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v3
|
||||
@@ -457,25 +511,25 @@ jobs:
|
||||
|
||||
CXX_Unit_Tests:
|
||||
name: C++ unit tests
|
||||
needs: Build
|
||||
timeout-minutes: 15
|
||||
needs: [Build, Smart_CI]
|
||||
timeout-minutes: 25
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-2019
|
||||
runs-on: aks-win-4-cores-8gb
|
||||
env:
|
||||
INSTALL_DIR: "${{ github.workspace }}\\install"
|
||||
INSTALL_TEST_DIR: "${{ github.workspace }}\\install\\tests"
|
||||
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
@@ -490,72 +544,87 @@ jobs:
|
||||
popd
|
||||
|
||||
- name: OpenVINO Core unit tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).Core.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_core_unit_tests --gtest_print_time=1 --gtest_filter=-*IE_GPU* --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-NGraphUT.xml
|
||||
|
||||
- name: OpenVINO Inference functional tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).inference.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_inference_functional_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-InferenceFunc.xml
|
||||
|
||||
- name: OpenVINO Inference unit tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).inference.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_inference_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-InferenceUnit.xml
|
||||
|
||||
- name: Low Precision Transformations Tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).LP_transformations.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_lp_transformations_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-LpTransformations.xml
|
||||
|
||||
- name: OpenVINO Conditional compilation tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).Core.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_conditional_compilation_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ConditionalCompilation.xml
|
||||
|
||||
- name: IR frontend tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).IR_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_ir_frontend_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-IRFrontend.xml
|
||||
|
||||
- name: PaddlePaddle frontend tests # Disabled in Azure: https://github.com/openvinotoolkit/openvino/blob/master/.ci/azure/linux.yml#L403
|
||||
- name: PaddlePaddle frontend tests # Disabled because of CVS-95904
|
||||
if: ${{ 'false' }}
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/paddle_tests --gtest_print_time=1 --gtest_filter=*smoke* --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-PaddleTests.xml
|
||||
|
||||
- name: ONNX frontend tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).ONNX_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_onnx_frontend_tests --gtest_print_time=1 --gtest_filter=-*IE_GPU* --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ONNXFrontend.xml
|
||||
|
||||
- name: TensorFlow Common frontend tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test ||
|
||||
fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_common_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowCommonFrontend.xml
|
||||
|
||||
- name: TensorFlow frontend tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_frontend_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowFrontend.xml
|
||||
|
||||
- name: TensorFlow Lite frontend tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_lite_frontend_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowLiteFrontend.xml
|
||||
:: Skip ticket: 126320
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_tensorflow_lite_frontend_tests --gtest_print_time=1 --gtest_filter=-*test_decode_convert_equal_convert*:*test_convert_partially_equal_convert* --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TensorFlowLiteFrontend.xml
|
||||
|
||||
- name: Transformations func tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).transformations.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_transformations_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-Transformations.xml
|
||||
|
||||
- name: Legacy Transformations func tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).GNA.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_legacy_transformations_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-LegacyTransformations.xml
|
||||
|
||||
- name: Inference Engine 1.0 unit tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).GNA.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/InferenceEngineUnitTests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-InferenceEngineUnitTests.xml
|
||||
@@ -566,47 +635,53 @@ jobs:
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_util_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-commonUtilsTests.xml
|
||||
|
||||
- name: Snippets func tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_snippets_func_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-SnippetsFuncTests.xml
|
||||
|
||||
- name: CPU plugin unit tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_cpu_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-CPUUnitTests.xml
|
||||
|
||||
- name: SubgraphsDumper tests
|
||||
- name: ov_subgraphs_dumper_tests tests
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/subgraphsDumperTests --gtest_print_time=1 --gtest_print_time=1 --device=TEMPLATE --gtest_filter="*OpImpl*" --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-SubgraphsDumperTests.xml
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_subgraphs_dumper_tests --gtest_print_time=1 --device=TEMPLATE --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-SubgraphsDumperTests.xml
|
||||
|
||||
- name: Template OpImpl tests
|
||||
if: ${{ 'false' }} # Ticket: 123572
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/conformanceTests --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TemplateOpImplTests.xml
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_op_conformance_tests --gtest_print_time=1 --gtest_filter="*OpImpl*" --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TemplateOpImplTests.xml
|
||||
|
||||
- name: GNA plugin unit tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).GNA.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_gna_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-GNAUnitTests.xml
|
||||
|
||||
- name: AUTO unit tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).AUTO.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_auto_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_unit_tests.xml
|
||||
|
||||
- name: AUTO func Tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).AUTO.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_auto_func_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_func_tests.xml
|
||||
|
||||
- name: Template plugin func tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TEMPLATE.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_template_func_tests --gtest_print_time=1 --gtest_filter=*smoke* --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-TemplateFuncTests.xml
|
||||
|
||||
- name: Inference Engine C API tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).C_API.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/InferenceEngineCAPITests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-InferenceEngineCAPITests.xml
|
||||
@@ -618,26 +693,31 @@ jobs:
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_capi_test --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OpenVINOCAPITests.xml
|
||||
|
||||
- name: AutoBatch unit tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).AUTO_BATCH.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_auto_batch_unit_tests --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_batch_unit_tests.xml
|
||||
|
||||
- name: AutoBatch func tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).AUTO_BATCH.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_auto_batch_func_tests --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-ov_auto_batch_func_tests.xml
|
||||
|
||||
- name: Proxy Plugin func tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).PROXY.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_proxy_plugin_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVProxyTests.xml
|
||||
|
||||
- name: Hetero Unit Tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).HETERO.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_hetero_unit_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroUnitTests.xml
|
||||
|
||||
- name: Hetero Func Tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).HETERO.test
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && ${{ env.INSTALL_TEST_DIR }}/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroFuncTests.xml
|
||||
@@ -652,27 +732,28 @@ jobs:
|
||||
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
needs: Build
|
||||
timeout-minutes: 30
|
||||
needs: [Build, Smart_CI]
|
||||
timeout-minutes: 70
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-2019-8-core
|
||||
runs-on: aks-win-8-cores-16gb
|
||||
env:
|
||||
OPENVINO_REPO: "${{ github.workspace }}\\openvino"
|
||||
INSTALL_DIR: "${{ github.workspace }}\\install"
|
||||
INSTALL_TEST_DIR: "${{ github.workspace }}\\install\\tests"
|
||||
PARALLEL_TEST_SCRIPT: "${{ github.workspace }}\\install\\tests\\functional_test_utils\\layer_tests_summary\\run_parallel.py"
|
||||
PARALLEL_TEST_CACHE: "${{ github.workspace }}\\install\\tests\\test_cache.lst"
|
||||
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
@@ -686,9 +767,20 @@ jobs:
|
||||
Expand-Archive openvino_tests.zip -DestinationPath "${{ env.INSTALL_DIR }}"
|
||||
popd
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: 'true'
|
||||
|
||||
- name: Install python dependencies
|
||||
shell: cmd
|
||||
@@ -706,7 +798,7 @@ jobs:
|
||||
shell: cmd
|
||||
run: |
|
||||
call "${{ env.INSTALL_DIR }}\\setupvars.bat" && python3 ${{ env.PARALLEL_TEST_SCRIPT }} -e ${{ env.INSTALL_TEST_DIR }}\ov_cpu_func_tests.exe -c ${{ env.PARALLEL_TEST_CACHE }} -w ${{ env.INSTALL_TEST_DIR }} -s suite -- --gtest_filter=*smoke*"
|
||||
timeout-minutes: 25
|
||||
timeout-minutes: 60
|
||||
|
||||
- name: Save tests execution time
|
||||
uses: actions/cache/save@v3
|
||||
@@ -730,3 +822,17 @@ jobs:
|
||||
${{ env.INSTALL_TEST_DIR }}/logs/hash_table.csv
|
||||
${{ env.PARALLEL_TEST_CACHE }}
|
||||
if-no-files-found: 'error'
|
||||
|
||||
Overall_Status:
|
||||
name: ci/gha_overall_status_windows
|
||||
needs: [Smart_CI, Build, Samples, CXX_Unit_Tests, Python_Unit_Tests, CPU_Functional_Tests]
|
||||
if: ${{ always() }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check status of all jobs
|
||||
if: >-
|
||||
${{
|
||||
contains(needs.*.result, 'failure') ||
|
||||
contains(needs.*.result, 'cancelled')
|
||||
}}
|
||||
run: exit 1
|
||||
|
||||
@@ -4,24 +4,25 @@ on:
|
||||
schedule:
|
||||
# run daily at 00:00
|
||||
- cron: '0 0 * * *'
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# push:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
# branches:
|
||||
# - master
|
||||
# pull_request:
|
||||
# paths-ignore:
|
||||
# - '**/docs/**'
|
||||
# - 'docs/**'
|
||||
# - '**/**.md'
|
||||
# - '**.md'
|
||||
# - '**/layer_tests_summary/**'
|
||||
# - '**/conformance/**'
|
||||
push:
|
||||
paths-ignore:
|
||||
- '**/docs/**'
|
||||
- 'docs/**'
|
||||
- '**/**.md'
|
||||
- '**.md'
|
||||
- '**/layer_tests_summary/**'
|
||||
- '**/conformance/**'
|
||||
branches:
|
||||
- master
|
||||
- 'releases/**'
|
||||
|
||||
concurrency:
|
||||
# github.ref is not unique in post-commit
|
||||
@@ -37,7 +38,7 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-latest-8-cores
|
||||
runs-on: aks-win-16-cores-32gb
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
@@ -49,6 +50,8 @@ jobs:
|
||||
BUILD_DIR: "${{ github.workspace }}\\openvino_build"
|
||||
MODELS_PATH: "${{ github.workspace }}\\testdata"
|
||||
SELECTIVE_BUILD_STAT_DIR: "${{ github.workspace }}\\selective_build_stat"
|
||||
# TODO: specify version of compiler here
|
||||
SCCACHE_AZURE_KEY_PREFIX: windows2022_x86_64_itt_Release
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
@@ -75,13 +78,39 @@ jobs:
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: 'false'
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.3
|
||||
with:
|
||||
version: "v0.5.4"
|
||||
|
||||
- name: Install build dependencies
|
||||
run: choco install --no-progress ninja
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
# For running ONNX frontend unit tests
|
||||
python3 -m pip install --force-reinstall -r ${{ env.OPENVINO_REPO }}/src/frontends/onnx/tests/requirements.txt
|
||||
|
||||
# For running TensorFlow frontend unit tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/tensorflow/tests/requirements.txt
|
||||
|
||||
# For running TensorFlow Lite frontend unit tests
|
||||
python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/tensorflow_lite/tests/requirements.txt
|
||||
|
||||
# For getting rid of SSL issues during model downloading for unit tests
|
||||
python3 -m pip install certifi
|
||||
|
||||
# Disabled because of CVS-95904
|
||||
# For running Paddle frontend unit tests
|
||||
# python3 -m pip install -r ${{ env.OPENVINO_REPO }}/src/frontends/paddle/tests/requirements.txt
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
@@ -89,17 +118,8 @@ jobs:
|
||||
- name: Configure Developer Command Prompt for Microsoft Visual C++
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
|
||||
- name: Setup sccache
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
variant: sccache
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
# github.ref_name is 'ref/PR_#' in case of the PR, and 'branch_name' when executed on push
|
||||
save: ${{ github.ref_name == 'master' && 'true' || 'false' }}
|
||||
key: ${{ github.job }}-${{ runner.os }}-itt
|
||||
restore-keys: |
|
||||
${{ github.job }}-${{ runner.os }}-itt
|
||||
- name: Set SSL_CERT_FILE for model downloading for unit tests
|
||||
run: echo SSL_CERT_FILE=$(python3 -m certifi) >> $env:GITHUB_ENV
|
||||
|
||||
- name: CMake configure - CC COLLECT
|
||||
run: |
|
||||
@@ -116,10 +136,29 @@ jobs:
|
||||
-S ${{ env.OPENVINO_REPO }} `
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Clean sccache stats
|
||||
run: '& "$Env:SCCACHE_PATH" --zero-stats'
|
||||
|
||||
# to get more information on the issue
|
||||
# described in the next step
|
||||
- name: Show which network ports are used
|
||||
run: netstat -ban
|
||||
|
||||
# the case is the following:
|
||||
# sccache: error: An attempt was made to access a socket in a way forbidden by its access permissions. (os error 10013)
|
||||
# This looks like the attempt to use
|
||||
# a port below 1024 or a port
|
||||
# which is occupied by another app
|
||||
- name: Stop sccache server just in case
|
||||
run: '& "$Env:SCCACHE_PATH" --stop-server'
|
||||
|
||||
- name: Cmake build - CC COLLECT
|
||||
run: |
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --target sea_itt_lib
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel 8 --config ${{ env.CMAKE_BUILD_TYPE }} && `
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel 8 --config ${{ env.CMAKE_BUILD_TYPE }} --target sea_itt_lib
|
||||
|
||||
- name: Show sccache stats
|
||||
run: '& "$Env:SCCACHE_PATH" --show-stats'
|
||||
|
||||
- name: Cmake install - OpenVINO
|
||||
run: cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
@@ -143,7 +182,7 @@ jobs:
|
||||
shell: cmd
|
||||
run: |
|
||||
set path=%path%;${{ env.OPENVINO_REPO }}\temp\tbb\bin
|
||||
|
||||
|
||||
python3 ${{ env.OPENVINO_REPO }}\thirdparty\itt_collector\runtool\sea_runtool.py ^
|
||||
--bindir ${{ env.OPENVINO_REPO }}\bin\intel64\${{ env.CMAKE_BUILD_TYPE }} ^
|
||||
-o ${{ env.SELECTIVE_BUILD_STAT_DIR }}\itt_stat ! ${{ env.OPENVINO_REPO }}\bin\intel64\${{ env.CMAKE_BUILD_TYPE }}\benchmark_app.exe ^
|
||||
@@ -199,7 +238,7 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-latest-8-cores
|
||||
runs-on: aks-win-16-cores-32gb
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: sccache
|
||||
@@ -208,6 +247,7 @@ jobs:
|
||||
BUILD_DIR: "${{ github.workspace }}\\openvino_build"
|
||||
MODELS_PATH: "${{ github.workspace }}\\testdata"
|
||||
SELECTIVE_BUILD_STAT_DIR: "${{ github.workspace }}\\selective_build_stat"
|
||||
SCCACHE_AZURE_KEY_PREFIX: windows2022_x86_64_cc_Release
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@v4
|
||||
@@ -224,7 +264,7 @@ jobs:
|
||||
ref: 'master'
|
||||
|
||||
- name: Download selective build statistics package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_selective_build_stat
|
||||
path: ${{ env.SELECTIVE_BUILD_STAT_DIR }}
|
||||
@@ -232,6 +272,18 @@ jobs:
|
||||
- name: Extract selective build statistics package
|
||||
run: Expand-Archive ${{ env.SELECTIVE_BUILD_STAT_DIR }}/openvino_selective_build_stat.zip -DestinationPath "${{ env.SELECTIVE_BUILD_STAT_DIR }}"
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: 'false'
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.3
|
||||
with:
|
||||
version: "v0.5.4"
|
||||
|
||||
- name: CMake configure - CC ON
|
||||
run: |
|
||||
cmake `
|
||||
@@ -250,9 +302,15 @@ jobs:
|
||||
-S ${{ env.OPENVINO_REPO }} `
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
- name: Clean sccache stats
|
||||
run: '& "$Env:SCCACHE_PATH" --zero-stats'
|
||||
|
||||
- name: Cmake build - CC ON
|
||||
run: cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --target benchmark_app
|
||||
|
||||
- name: Show sccache stats
|
||||
run: '& "$Env:SCCACHE_PATH" --show-stats'
|
||||
|
||||
- name: List bin files
|
||||
shell: cmd
|
||||
run: dir ${{ env.OPENVINO_REPO }}\bin\ /s
|
||||
@@ -266,18 +324,20 @@ jobs:
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
needs: Build
|
||||
timeout-minutes: 70
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: windows-latest-8-cores
|
||||
runs-on: aks-win-8-cores-16gb
|
||||
env:
|
||||
OPENVINO_REPO: "${{ github.workspace }}\\openvino"
|
||||
INSTALL_TEST_DIR: "${{ github.workspace }}\\tests_install"
|
||||
PARALLEL_TEST_SCRIPT: "${{ github.workspace }}\\tests_install\\layer_tests_summary\\run_parallel.py"
|
||||
PARALLEL_TEST_CACHE: "${{ github.workspace }}\\tests_install\\test_cache.lst"
|
||||
|
||||
steps:
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
@@ -285,9 +345,20 @@ jobs:
|
||||
- name: Extract OpenVINO tests package
|
||||
run: Expand-Archive ${{ env.INSTALL_TEST_DIR }}/openvino_tests.zip -DestinationPath "${{ env.INSTALL_TEST_DIR }}"
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: 'false'
|
||||
|
||||
- name: Install python dependencies for run_parallel.py
|
||||
run: python3 -m pip install -r ${{ env.INSTALL_TEST_DIR }}/layer_tests_summary/requirements.txt
|
||||
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -7,7 +7,7 @@ cmake-build*
|
||||
!__init__.py
|
||||
!__main__.py
|
||||
# and sphinx documentation folders
|
||||
!docs/_*
|
||||
!docs/sphinx_setup/_*
|
||||
|
||||
# developer tools
|
||||
*.idea
|
||||
@@ -61,3 +61,4 @@ __pycache__
|
||||
/tools/mo/*.svg
|
||||
/src/plugins/intel_cpu/tools/commit_slider/*.json
|
||||
/src/plugins/intel_cpu/tools/commit_slider/slider_cache/*
|
||||
.github/GITHUB_OUTPUT
|
||||
|
||||
@@ -4,8 +4,14 @@
|
||||
|
||||
OpenVINO™ is always looking for opportunities to improve and your contributions
|
||||
play a big role in this process. There are several ways you can make the
|
||||
product better:
|
||||
product better.
|
||||
|
||||
# Table of Contents
|
||||
1. [Forms of contribution](#Forms-of-contribution)
|
||||
2. [Technical guide](#Technical-guide)
|
||||
|
||||
|
||||
## Forms of contribution
|
||||
|
||||
### Provide Feedback
|
||||
|
||||
@@ -32,7 +38,7 @@ product better:
|
||||
If you want to help improving OpenVINO, choose one of the issues reported in
|
||||
[GitHub Issue Tracker](https://github.com/openvinotoolkit/openvino/issues) and
|
||||
[create a Pull Request](./CONTRIBUTING_PR.md) addressing it. Consider one of the
|
||||
tasks listed as [first-time contributions](https://github.com/openvinotoolkit/openvino/issues/17502).
|
||||
tasks listed as [first-time contributions](https://github.com/orgs/openvinotoolkit/projects/3).
|
||||
If the feature you want to develop is more complex or not well defined by the reporter,
|
||||
it is always a good idea to [discuss it](https://github.com/openvinotoolkit/openvino/discussions)
|
||||
with OpenVINO developers first. Before creating a new PR, check if nobody is already
|
||||
@@ -81,6 +87,66 @@ product better:
|
||||
share your expertise with the community. Check GitHub Discussions and
|
||||
Issues to see if you can help someone.
|
||||
|
||||
## Technical guide
|
||||
|
||||
This section lists all the necessary steps required to set up your environment, build OpenVINO locally, and run tests for specific components. It's a perfect place to start when you have just picked a Good First Issue and are wondering how to start working on it.
|
||||
|
||||
Keep in mind that we are here to help - **do not hesitate to ask the development team if something is not clear**. Such questions allow us to keep improving our documentation.
|
||||
|
||||
### 1. Prerequisites
|
||||
|
||||
You can start with the following links:
|
||||
- [What is OpenVINO?](https://github.com/openvinotoolkit/openvino#what-is-openvino-toolkit)
|
||||
- [OpenVINO architecture](https://github.com/openvinotoolkit/openvino/blob/master/src/docs/architecture.md)
|
||||
- [User documentation](https://docs.openvino.ai/)
|
||||
- [Blog post on contributing to OpenVINO](https://medium.com/openvino-toolkit/how-to-contribute-to-an-ai-open-source-project-c741f48e009e)
|
||||
- [Pick up a Good First Issue](https://github.com/orgs/openvinotoolkit/projects/3)
|
||||
|
||||
### 2. Building the project
|
||||
|
||||
In order to build the project, follow the [build instructions for your specific OS](https://github.com/openvinotoolkit/openvino/blob/master/docs/dev/build.md).
|
||||
|
||||
### 3. Familiarize yourself with the component you'll be working with
|
||||
|
||||
Choose the component your Good First Issue is related to. You can run tests to make sure it works correctly.
|
||||
|
||||
##### APIs
|
||||
- [C API](https://github.com/openvinotoolkit/openvino/tree/master/src/bindings/c)
|
||||
- [Core](https://github.com/openvinotoolkit/openvino/tree/master/src/core)
|
||||
- [Python API](https://github.com/openvinotoolkit/openvino/tree/master/src/bindings/python)
|
||||
|
||||
##### Frontends
|
||||
- [IR Frontend](https://github.com/openvinotoolkit/openvino/tree/master/src/frontends/ir)
|
||||
- [ONNX Frontend](https://github.com/openvinotoolkit/openvino/tree/master/src/frontends/onnx)
|
||||
- [PaddlePaddle Frontend](https://github.com/openvinotoolkit/openvino/tree/master/src/frontends/paddle)
|
||||
- [PyTorch Frontend](https://github.com/openvinotoolkit/openvino/tree/master/src/frontends/pytorch)
|
||||
- [TensorFlow Frontend](https://github.com/openvinotoolkit/openvino/tree/master/src/frontends/tensorflow)
|
||||
|
||||
##### Plugins
|
||||
- [Auto plugin](https://github.com/openvinotoolkit/openvino/blob/master/src/plugins/auto)
|
||||
- [CPU plugin](https://github.com/openvinotoolkit/openvino/blob/master/src/plugins/intel_cpu)
|
||||
- [GPU plugin](https://github.com/openvinotoolkit/openvino/blob/master/src/plugins/intel_gpu)
|
||||
- [Hetero plugin](https://github.com/openvinotoolkit/openvino/blob/master/src/plugins/hetero)
|
||||
- [Template plugin](https://github.com/openvinotoolkit/openvino/tree/master/src/plugins/template)
|
||||
|
||||
##### Tools
|
||||
- [Benchmark Tool](https://github.com/openvinotoolkit/openvino/tree/master/tools/benchmark_tool)
|
||||
- [Model Optimizer](https://github.com/openvinotoolkit/openvino/tree/master/tools/mo)
|
||||
|
||||
##### Others
|
||||
- [Documentation](https://github.com/openvinotoolkit/openvino/blob/master/CONTRIBUTING_DOCS.md)
|
||||
|
||||
### 3. Start working on your Good First Issue
|
||||
|
||||
Use the issue description and locally built OpenVINO to complete the task. Remember that you can always ask users tagged in the "Contact points" section for help!
|
||||
|
||||
### 4. Submit a PR with your changes
|
||||
|
||||
Follow our [Good Pull Request guidelines](https://github.com/openvinotoolkit/openvino/blob/master/CONTRIBUTING_PR.md).
|
||||
|
||||
### 5. Wait for a review
|
||||
|
||||
We'll make sure to review your Pull Request as soon as possible and provide you with our feedback. You can expect a merge once your changes are validated with automatic tests and approved by maintainers.
|
||||
|
||||
## License
|
||||
|
||||
|
||||
26
README.md
26
README.md
@@ -67,24 +67,24 @@ The OpenVINO™ Runtime can infer models on different hardware devices. This sec
|
||||
<tbody>
|
||||
<tr>
|
||||
<td rowspan=2>CPU</td>
|
||||
<td> <a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_CPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-c-p-u">Intel CPU</a></tb>
|
||||
<td> <a href="https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_supported_plugins_CPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-c-p-u">Intel CPU</a></tb>
|
||||
<td><b><i><a href="./src/plugins/intel_cpu">openvino_intel_cpu_plugin</a></i></b></td>
|
||||
<td>Intel Xeon with Intel® Advanced Vector Extensions 2 (Intel® AVX2), Intel® Advanced Vector Extensions 512 (Intel® AVX-512), and AVX512_BF16, Intel Core Processors with Intel AVX2, Intel Atom Processors with Intel® Streaming SIMD Extensions (Intel® SSE), Intel® Advanced Matrix Extensions (Intel® AMX)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> <a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_CPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-c-p-u">ARM CPU</a></tb>
|
||||
<td> <a href="https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_supported_plugins_CPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-c-p-u">ARM CPU</a></tb>
|
||||
<td><b><i><a href="./src/plugins/intel_cpu">openvino_arm_cpu_plugin</a></i></b></td>
|
||||
<td>Raspberry Pi™ 4 Model B, Apple® Mac mini with Apple silicon
|
||||
</tr>
|
||||
<tr>
|
||||
<td>GPU</td>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_GPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-g-p-u">Intel GPU</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_supported_plugins_GPU.html#doxid-openvino-docs-o-v-u-g-supported-plugins-g-p-u">Intel GPU</a></td>
|
||||
<td><b><i><a href="./src/plugins/intel_gpu">openvino_intel_gpu_plugin</a></i></b></td>
|
||||
<td>Intel Processor Graphics, including Intel HD Graphics and Intel Iris Graphics</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>GNA</td>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_GNA.html#doxid-openvino-docs-o-v-u-g-supported-plugins-g-n-a">Intel GNA</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_supported_plugins_GNA.html#doxid-openvino-docs-o-v-u-g-supported-plugins-g-n-a">Intel GNA</a></td>
|
||||
<td><b><i><a href="./src/plugins/intel_gna">openvino_intel_gna_plugin</a></i></b></td>
|
||||
<td>Intel Speech Enabling Developer Kit, Amazon Alexa* Premium Far-Field Developer Kit, Intel Pentium Silver J5005 Processor, Intel Pentium Silver N5000 Processor, Intel Celeron J4005 Processor, Intel Celeron J4105 Processor, Intel Celeron Processor N4100, Intel Celeron Processor N4000, Intel Core i3-8121U Processor, Intel Core i7-1065G7 Processor, Intel Core i7-1060G7 Processor, Intel Core i5-1035G4 Processor, Intel Core i5-1035G7 Processor, Intel Core i5-1035G1 Processor, Intel Core i5-1030G7 Processor, Intel Core i5-1030G4 Processor, Intel Core i3-1005G1 Processor, Intel Core i3-1000G1 Processor, Intel Core i3-1000G4 Processor</td>
|
||||
</tr>
|
||||
@@ -102,22 +102,22 @@ OpenVINO™ Toolkit also contains several plugins which simplify loading models
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_supported_plugins_AUTO.html">Auto</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_supported_plugins_AUTO.html">Auto</a></td>
|
||||
<td><b><i><a href="./src/plugins/auto">openvino_auto_plugin</a></i></b></td>
|
||||
<td>Auto plugin enables selecting Intel device for inference automatically</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_Automatic_Batching.html">Auto Batch</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_Automatic_Batching.html">Auto Batch</a></td>
|
||||
<td><b><i><a href="./src/plugins/auto_batch">openvino_auto_batch_plugin</a></i></b></td>
|
||||
<td>Auto batch plugin performs on-the-fly automatic batching (i.e. grouping inference requests together) to improve device utilization, with no programming effort from the user</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_Hetero_execution.html#doxid-openvino-docs-o-v-u-g-hetero-execution">Hetero</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_Hetero_execution.html#doxid-openvino-docs-o-v-u-g-hetero-execution">Hetero</a></td>
|
||||
<td><b><i><a href="./src/plugins/hetero">openvino_hetero_plugin</a></i></b></td>
|
||||
<td>Heterogeneous execution enables automatic inference splitting between several devices</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_Running_on_multiple_devices.html#doxid-openvino-docs-o-v-u-g-running-on-multiple-devices">Multi</a></td>
|
||||
<td><a href="https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_Running_on_multiple_devices.html#doxid-openvino-docs-o-v-u-g-running-on-multiple-devices">Multi</a></td>
|
||||
<td><b><i><a href="./src/plugins/auto">openvino_auto_plugin</a></i></b></td>
|
||||
<td>Multi plugin enables simultaneous inference of the same model on several devices in parallel</td>
|
||||
</tr>
|
||||
@@ -164,9 +164,9 @@ The list of OpenVINO tutorials:
|
||||
## System requirements
|
||||
|
||||
The system requirements vary depending on platform and are available on dedicated pages:
|
||||
- [Linux](https://docs.openvino.ai/2023.1/openvino_docs_install_guides_installing_openvino_linux_header.html)
|
||||
- [Windows](https://docs.openvino.ai/2023.1/openvino_docs_install_guides_installing_openvino_windows_header.html)
|
||||
- [macOS](https://docs.openvino.ai/2023.1/openvino_docs_install_guides_installing_openvino_macos_header.html)
|
||||
- [Linux](https://docs.openvino.ai/2023.2/openvino_docs_install_guides_installing_openvino_linux_header.html)
|
||||
- [Windows](https://docs.openvino.ai/2023.2/openvino_docs_install_guides_installing_openvino_windows_header.html)
|
||||
- [macOS](https://docs.openvino.ai/2023.2/openvino_docs_install_guides_installing_openvino_macos_header.html)
|
||||
|
||||
## How to build
|
||||
|
||||
@@ -206,6 +206,6 @@ Report questions, issues and suggestions, using:
|
||||
\* Other names and brands may be claimed as the property of others.
|
||||
|
||||
[Open Model Zoo]:https://github.com/openvinotoolkit/open_model_zoo
|
||||
[OpenVINO™ Runtime]:https://docs.openvino.ai/2023.1/openvino_docs_OV_UG_OV_Runtime_User_Guide.html
|
||||
[OpenVINO Model Converter (OVC)]:https://docs.openvino.ai/2023.1/openvino_docs_model_processing_introduction.html#convert-a-model-in-cli-ovc
|
||||
[OpenVINO™ Runtime]:https://docs.openvino.ai/2023.2/openvino_docs_OV_UG_OV_Runtime_User_Guide.html
|
||||
[OpenVINO Model Converter (OVC)]:https://docs.openvino.ai/2023.2/openvino_docs_model_processing_introduction.html#convert-a-model-in-cli-ovc
|
||||
[Samples]:https://github.com/openvinotoolkit/openvino/tree/master/samples
|
||||
|
||||
@@ -87,11 +87,6 @@ function(ov_set_temp_directory temp_variable source_tree_dir)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
macro(set_temp_directory)
|
||||
message(WARNING "'set_temp_directory' is deprecated. Please, use 'ov_set_temp_directory'")
|
||||
ov_set_temp_directory(${ARGV})
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# For cross-compilation
|
||||
#
|
||||
@@ -294,11 +289,6 @@ function(ov_mark_target_as_cc TARGET_NAME)
|
||||
add_dependencies(${TARGET_NAME} conditional_compilation_gen)
|
||||
endfunction()
|
||||
|
||||
function(ie_mark_target_as_cc TARGET_NAME)
|
||||
message(WARNING "This function is deprecated. Please use ov_mark_target_as_cc(TARGET_NAME) instead.")
|
||||
ov_mark_target_as_cc(${TARGET_NAME})
|
||||
endfunction()
|
||||
|
||||
include(python_requirements)
|
||||
|
||||
# Code style utils
|
||||
|
||||
@@ -181,15 +181,3 @@ function(ov_add_test_target)
|
||||
COMPONENT ${ARG_COMPONENT}
|
||||
EXCLUDE_FROM_ALL)
|
||||
endfunction()
|
||||
|
||||
# deprecated
|
||||
|
||||
function(addIeTarget)
|
||||
message(WARNING "'addIeTarget' is deprecated, please, use 'ov_add_target' instead")
|
||||
ov_add_target(${ARGV})
|
||||
endfunction()
|
||||
|
||||
function(addIeTargetTest)
|
||||
message(WARNING "'addIeTargetTest' is deprecated, please, use 'ov_add_test_target' instead")
|
||||
ov_add_test_target(${ARGV})
|
||||
endfunction()
|
||||
|
||||
@@ -196,10 +196,3 @@ endfunction()
|
||||
function(ov_add_api_validator_post_build_step)
|
||||
_ov_add_api_validator_post_build_step(${ARGN})
|
||||
endfunction()
|
||||
|
||||
# deprecated
|
||||
|
||||
function(ie_add_api_validator_post_build_step)
|
||||
message(WARNING "'ie_add_api_validator_post_build_step' is deprecated, use 'ov_add_api_validator_post_build_step' instead")
|
||||
_ov_add_api_validator_post_build_step(${ARGN})
|
||||
endfunction()
|
||||
|
||||
@@ -130,8 +130,3 @@ function(ov_add_clang_format_target TARGET_NAME)
|
||||
add_dependencies(clang_format_check_all ${TARGET_NAME})
|
||||
add_dependencies(clang_format_fix_all ${TARGET_NAME}_fix)
|
||||
endfunction()
|
||||
|
||||
function(add_clang_format_target)
|
||||
message(WARNING "add_clang_format_target is deprecated, use ov_add_clang_format_target instead")
|
||||
ov_add_clang_format_target(${ARGV})
|
||||
endfunction()
|
||||
|
||||
@@ -32,11 +32,6 @@ macro(ov_disable_deprecated_warnings)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ov_c_cxx_deprecated}")
|
||||
endmacro()
|
||||
|
||||
macro(disable_deprecated_warnings)
|
||||
message(WARNING "'disable_deprecated_warnings' is deprecated, use 'ov_disable_deprecated_warnings' instead")
|
||||
ov_disable_deprecated_warnings()
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# ov_deprecated_no_errors()
|
||||
#
|
||||
@@ -125,7 +120,7 @@ macro(ov_avx2_optimization_flags flags)
|
||||
set(${flags} -xCORE-AVX2)
|
||||
endif()
|
||||
elseif(OV_COMPILER_IS_CLANG OR CMAKE_COMPILER_IS_GNUCXX)
|
||||
set(${flags} -mavx2 -mfma)
|
||||
set(${flags} -mavx2 -mfma -mf16c)
|
||||
else()
|
||||
message(WARNING "Unsupported CXX compiler ${CMAKE_CXX_COMPILER_ID}")
|
||||
endif()
|
||||
@@ -147,7 +142,7 @@ macro(ov_avx512_optimization_flags flags)
|
||||
set(${flags} -xCOMMON-AVX512)
|
||||
endif()
|
||||
elseif(OV_COMPILER_IS_CLANG OR CMAKE_COMPILER_IS_GNUCXX)
|
||||
set(${flags} -mavx512f -mfma)
|
||||
set(${flags} -mavx512f -mfma -mf16c)
|
||||
else()
|
||||
message(WARNING "Unsupported CXX compiler ${CMAKE_CXX_COMPILER_ID}")
|
||||
endif()
|
||||
@@ -213,16 +208,6 @@ function(ov_disable_all_warnings)
|
||||
endforeach()
|
||||
endfunction()
|
||||
|
||||
#
|
||||
# ie_enable_lto()
|
||||
#
|
||||
# Enables Link Time Optimization compilation
|
||||
#
|
||||
macro(ie_enable_lto)
|
||||
message(WARNING "'ie_enable_lto' is deprecated, set 'INTERPROCEDURAL_OPTIMIZATION_RELEASE' target property instead")
|
||||
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION_RELEASE ON)
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# ov_add_compiler_flags(<flag1 [flag2 flag3 ...>])
|
||||
#
|
||||
@@ -235,11 +220,6 @@ macro(ov_add_compiler_flags)
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
macro(ie_add_compiler_flags)
|
||||
message(WARNING "'ie_add_compiler_flags' is deprecated, use 'ov_add_compiler_flags' instead")
|
||||
ov_add_compiler_flags(${ARGN})
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# ov_force_include(<target> <PUBLIC | PRIVATE | INTERFACE> <header file>)
|
||||
#
|
||||
|
||||
@@ -19,10 +19,3 @@ function(ov_build_target_faster TARGET_NAME)
|
||||
target_precompile_headers(${TARGET_NAME} ${FASTER_BUILD_PCH})
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# deprecated
|
||||
|
||||
function(ie_faster_build)
|
||||
message(WARNING "ie_faster_build is deprecated, use ov_build_target_faster instead")
|
||||
ov_build_target_faster(${ARGV})
|
||||
endfunction()
|
||||
|
||||
@@ -57,10 +57,10 @@ function(ov_generate_frontends_hpp)
|
||||
# for some reason dependency on source files does not work
|
||||
# so, we have to use explicit target and make it dependency for frontend_common
|
||||
add_custom_target(_ov_frontends_hpp DEPENDS ${ov_frontends_hpp})
|
||||
add_dependencies(frontend_common_obj _ov_frontends_hpp)
|
||||
add_dependencies(openvino_frontend_common_obj _ov_frontends_hpp)
|
||||
|
||||
# add dependency for object files
|
||||
get_target_property(sources frontend_common_obj SOURCES)
|
||||
get_target_property(sources openvino_frontend_common_obj SOURCES)
|
||||
foreach(source IN LISTS sources)
|
||||
if("${source}" MATCHES "\\$\\<TARGET_OBJECTS\\:([A-Za-z0-9_]*)\\>")
|
||||
# object library
|
||||
@@ -80,17 +80,37 @@ endfunction()
|
||||
unset(protobuf_lite_installed CACHE)
|
||||
unset(protobuf_installed CACHE)
|
||||
|
||||
#
|
||||
# ov_frontend_group_files(<ROOT_DIR> # Root path for scanning
|
||||
# <REL_PATH> # Relative path (in ROOT_DIR) is used for scanning
|
||||
# <FILE_EXT>) # File extension for grouping
|
||||
#
|
||||
macro(ov_frontend_group_files root_dir rel_path file_mask)
|
||||
file(GLOB items RELATIVE ${root_dir}/${rel_path} ${root_dir}/${rel_path}/*)
|
||||
foreach(item ${items})
|
||||
if(IS_DIRECTORY ${root_dir}/${rel_path}/${item})
|
||||
ov_frontend_group_files(${root_dir} ${rel_path}/${item} ${file_mask})
|
||||
else()
|
||||
if(${item} MATCHES ".*\.${file_mask}$")
|
||||
string(REPLACE "/" "\\" groupname ${rel_path})
|
||||
source_group(${groupname} FILES ${root_dir}/${rel_path}/${item})
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# ov_add_frontend(NAME <IR|ONNX|...>
|
||||
# FILEDESCRIPTION <description> # used on Windows to describe DLL file
|
||||
# [LINKABLE_FRONTEND] # whether we can use FE API directly or via FEM only
|
||||
# [SKIP_INSTALL] # private frontend, not for end users
|
||||
# [PROTOBUF_REQUIRED] # options to denote that protobuf is used
|
||||
# [PROTOBUF_LITE] # requires only libprotobuf-lite
|
||||
# [SKIP_NCC_STYLE] # use custom NCC rules
|
||||
# [LINK_LIBRARIES <lib1 lib2 ...>])
|
||||
#
|
||||
macro(ov_add_frontend)
|
||||
set(options LINKABLE_FRONTEND PROTOBUF_LITE SKIP_NCC_STYLE SKIP_INSTALL)
|
||||
set(options LINKABLE_FRONTEND PROTOBUF_REQUIRED PROTOBUF_LITE SKIP_NCC_STYLE SKIP_INSTALL)
|
||||
set(oneValueArgs NAME FILEDESCRIPTION)
|
||||
set(multiValueArgs LINK_LIBRARIES PROTO_FILES)
|
||||
cmake_parse_arguments(OV_FRONTEND "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
@@ -120,7 +140,8 @@ macro(ov_add_frontend)
|
||||
# Create named folders for the sources within the .vcproj
|
||||
# Empty name lists them directly under the .vcproj
|
||||
|
||||
source_group("src" FILES ${LIBRARY_SRC})
|
||||
ov_frontend_group_files(${frontend_root_dir}/ "src" "cpp")
|
||||
ov_frontend_group_files(${frontend_root_dir}/ "src" "proto")
|
||||
source_group("include" FILES ${LIBRARY_HEADERS})
|
||||
source_group("public include" FILES ${LIBRARY_PUBLIC_HEADERS})
|
||||
|
||||
@@ -171,7 +192,7 @@ macro(ov_add_frontend)
|
||||
|
||||
# Create library
|
||||
add_library(${TARGET_NAME} ${LIBRARY_SRC} ${LIBRARY_HEADERS} ${LIBRARY_PUBLIC_HEADERS}
|
||||
${PROTO_SRCS} ${PROTO_HDRS} ${flatbuffers_schema_files} ${proto_files})
|
||||
${PROTO_SRCS} ${PROTO_HDRS} ${flatbuffers_schema_files} ${proto_files})
|
||||
|
||||
if(OV_FRONTEND_LINKABLE_FRONTEND)
|
||||
# create beautiful alias
|
||||
@@ -179,7 +200,7 @@ macro(ov_add_frontend)
|
||||
endif()
|
||||
|
||||
# Shutdown protobuf when unloading the frontend dynamic library
|
||||
if(proto_files AND BUILD_SHARED_LIBS)
|
||||
if(OV_FRONTEND_PROTOBUF_REQUIRED AND BUILD_SHARED_LIBS)
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE openvino::protobuf_shutdown)
|
||||
endif()
|
||||
|
||||
@@ -199,6 +220,7 @@ macro(ov_add_frontend)
|
||||
PUBLIC
|
||||
$<BUILD_INTERFACE:${${TARGET_NAME}_INCLUDE_DIR}>
|
||||
PRIVATE
|
||||
$<TARGET_PROPERTY:openvino::frontend::common,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
${frontend_root_dir}/src
|
||||
${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
@@ -208,17 +230,17 @@ macro(ov_add_frontend)
|
||||
target_link_libraries(${TARGET_NAME} PRIVATE ${OV_FRONTEND_LINK_LIBRARIES} PUBLIC openvino::runtime)
|
||||
ov_add_library_version(${TARGET_NAME})
|
||||
|
||||
# WA for TF frontends which always require protobuf (not protobuf-lite)
|
||||
# if TF FE is built in static mode, use protobuf for all other FEs
|
||||
if(FORCE_FRONTENDS_USE_PROTOBUF)
|
||||
set(OV_FRONTEND_PROTOBUF_LITE OFF)
|
||||
endif()
|
||||
# if protobuf::libprotobuf-lite is not available, use protobuf::libprotobuf
|
||||
if(NOT TARGET protobuf::libprotobuf-lite)
|
||||
set(OV_FRONTEND_PROTOBUF_LITE OFF)
|
||||
endif()
|
||||
if(OV_FRONTEND_PROTOBUF_REQUIRED)
|
||||
# WA for TF frontends which always require protobuf (not protobuf-lite)
|
||||
# if TF FE is built in static mode, use protobuf for all other FEs
|
||||
if(FORCE_FRONTENDS_USE_PROTOBUF)
|
||||
set(OV_FRONTEND_PROTOBUF_LITE OFF)
|
||||
endif()
|
||||
# if protobuf::libprotobuf-lite is not available, use protobuf::libprotobuf
|
||||
if(NOT TARGET protobuf::libprotobuf-lite)
|
||||
set(OV_FRONTEND_PROTOBUF_LITE OFF)
|
||||
endif()
|
||||
|
||||
if(proto_files)
|
||||
if(OV_FRONTEND_PROTOBUF_LITE)
|
||||
set(protobuf_target_name libprotobuf-lite)
|
||||
set(protobuf_install_name "protobuf_lite_installed")
|
||||
@@ -321,6 +343,7 @@ macro(ov_add_frontend)
|
||||
install(DIRECTORY ${${TARGET_NAME}_INCLUDE_DIR}/openvino
|
||||
DESTINATION ${FRONTEND_INSTALL_INCLUDE}
|
||||
COMPONENT ${dev_component}
|
||||
${OV_CPACK_COMP_CORE_DEV_EXCLUDE_ALL}
|
||||
FILES_MATCHING PATTERN "*.hpp")
|
||||
|
||||
# public target name
|
||||
|
||||
@@ -32,6 +32,8 @@ if(ENABLE_NCC_STYLE)
|
||||
set(clang_version 14)
|
||||
elseif(Python3_VERSION_MINOR EQUAL 11)
|
||||
set(clang_version 14)
|
||||
elseif(Python3_VERSION_MINOR EQUAL 12)
|
||||
set(clang_version 15)
|
||||
else()
|
||||
message(WARNING "Cannot suggest clang package for python ${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}")
|
||||
endif()
|
||||
|
||||
@@ -18,7 +18,7 @@ VariableReference: '^\w+$'
|
||||
|
||||
EnumName: '^[A-Z][\w]+$'
|
||||
# excepts element_type
|
||||
EnumConstantName: '^([A-Z\d_]+|undefined|dynamic|boolean|bf16|f16|f32|f64|i4|i8|i16|i32|i64|u1|u4|u8|u16|u32|u64|nf4|asymmetric|align_corners|round_prefer_floor|round_prefer_ceil|floor|ceil|simple|nearest|linear|linear_onnx|cubic|area|scales|sizes|half_pixel|tf_half_pixel_for_nn|pytorch_half_pixel|asymetric)$'
|
||||
EnumConstantName: '^([A-Z\d_]+|undefined|dynamic|boolean|bf16|f16|f32|f64|i4|i8|i16|i32|i64|u1|u4|u8|u16|u32|u64|nf4|string|asymmetric|align_corners|round_prefer_floor|round_prefer_ceil|floor|ceil|simple|nearest|linear|linear_onnx|cubic|area|scales|sizes|half_pixel|tf_half_pixel_for_nn|pytorch_half_pixel|asymetric)$'
|
||||
# TODO: align
|
||||
UsingDeclaration: '^.*$'
|
||||
TypedefName: '^.*$'
|
||||
|
||||
@@ -2,4 +2,5 @@ clang==12.0.1; python_version == '3.8'
|
||||
clang==12.0.1; python_version == '3.9'
|
||||
clang==14.0; python_version == '3.10'
|
||||
clang==14.0; python_version == '3.11'
|
||||
clang==15.0.7; python_version == '3.12'
|
||||
pyyaml
|
||||
@@ -55,20 +55,3 @@ function (ov_print_enabled_features)
|
||||
endforeach()
|
||||
message(STATUS "")
|
||||
endfunction()
|
||||
|
||||
# deprecated
|
||||
|
||||
macro (ie_option variable description value)
|
||||
message(WARNING "'ie_option' is deprecated, please, use 'ov_option' instead")
|
||||
ov_option(${variable} "${description}" ${value})
|
||||
endmacro()
|
||||
|
||||
macro(ie_dependent_option variable description def_value condition fallback_value)
|
||||
message(WARNING "'ie_dependent_option' is deprecated, please, use 'ov_dependent_option' instead")
|
||||
ov_dependent_option(${variable} "${description}" ${def_value} "${condition}" ${fallback_value})
|
||||
endmacro()
|
||||
|
||||
function(print_enabled_features)
|
||||
message(WARNING "'print_enabled_features' is deprecated, please, use 'ov_print_enabled_features' instead")
|
||||
ov_print_enabled_features()
|
||||
endfunction()
|
||||
|
||||
@@ -241,10 +241,3 @@ macro(ov_cpack)
|
||||
|
||||
include(CPack)
|
||||
endmacro()
|
||||
|
||||
# deprecated
|
||||
|
||||
macro(ie_cpack)
|
||||
message(WARNING "'ie_cpack' is deprecated. Please, use 'ov_cpack'")
|
||||
ov_cpack(${ARGV})
|
||||
endmacro()
|
||||
|
||||
@@ -135,9 +135,6 @@ function(ov_add_plugin)
|
||||
install(TARGETS ${OV_PLUGIN_NAME}
|
||||
LIBRARY DESTINATION ${OV_CPACK_PLUGINSDIR}
|
||||
COMPONENT ${install_component})
|
||||
install(TARGETS ${OV_PLUGIN_NAME}
|
||||
LIBRARY DESTINATION ${OV_CPACK_PLUGINSDIR}
|
||||
COMPONENT ${install_component})
|
||||
else()
|
||||
ov_install_static_lib(${OV_PLUGIN_NAME} ${OV_CPACK_COMP_CORE})
|
||||
endif()
|
||||
@@ -167,11 +164,6 @@ function(ov_add_plugin)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(ie_add_plugin)
|
||||
message(WARNING "'ie_add_plugin' is deprecated. Please, use 'ov_add_plugin'")
|
||||
ov_add_plugin(${ARGN})
|
||||
endfunction()
|
||||
|
||||
#
|
||||
# ov_register_in_plugins_xml(MAIN_TARGET <main target name>)
|
||||
#
|
||||
@@ -263,14 +255,6 @@ macro(ov_register_plugins)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# ie_register_plugins()
|
||||
#
|
||||
macro(ie_register_plugins)
|
||||
message(WARNING "'ie_register_plugins' is deprecated. Please, use 'ov_register_plugins'")
|
||||
ov_register_plugins(${ARGN})
|
||||
endmacro()
|
||||
|
||||
#
|
||||
# ov_target_link_plugins(<TARGET_NAME>)
|
||||
#
|
||||
|
||||
@@ -10,8 +10,11 @@ function(ov_branch_name VAR REPO_ROOT)
|
||||
COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
|
||||
WORKING_DIRECTORY ${REPO_ROOT}
|
||||
OUTPUT_VARIABLE GIT_BRANCH
|
||||
RESULT_VARIABLE EXIT_CODE
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
set (${VAR} ${GIT_BRANCH} PARENT_SCOPE)
|
||||
if(EXIT_CODE EQUAL 0)
|
||||
set(${VAR} ${GIT_BRANCH} PARENT_SCOPE)
|
||||
endif()
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
@@ -21,22 +24,31 @@ function(ov_commit_hash VAR REPO_ROOT)
|
||||
COMMAND ${GIT_EXECUTABLE} rev-parse --short=11 HEAD
|
||||
WORKING_DIRECTORY ${REPO_ROOT}
|
||||
OUTPUT_VARIABLE GIT_COMMIT_HASH
|
||||
RESULT_VARIABLE EXIT_CODE
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
set (${VAR} ${GIT_COMMIT_HASH} PARENT_SCOPE)
|
||||
if(EXIT_CODE EQUAL 0)
|
||||
set(${VAR} ${GIT_COMMIT_HASH} PARENT_SCOPE)
|
||||
endif()
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(ov_commit_number VAR REPO_ROOT)
|
||||
set(GIT_COMMIT_NUMBER_FOUND OFF)
|
||||
if(GIT_FOUND)
|
||||
execute_process(
|
||||
COMMAND ${GIT_EXECUTABLE} rev-list --count --first-parent HEAD
|
||||
WORKING_DIRECTORY ${REPO_ROOT}
|
||||
OUTPUT_VARIABLE GIT_COMMIT_NUMBER
|
||||
RESULT_VARIABLE EXIT_CODE
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
set (${VAR} ${GIT_COMMIT_NUMBER} PARENT_SCOPE)
|
||||
else()
|
||||
if(EXIT_CODE EQUAL 0)
|
||||
set(GIT_COMMIT_NUMBER_FOUND ON)
|
||||
set(${VAR} ${GIT_COMMIT_NUMBER} PARENT_SCOPE)
|
||||
endif()
|
||||
endif()
|
||||
if(NOT GIT_COMMIT_NUMBER_FOUND)
|
||||
# set zeros since git is not available
|
||||
set (${VAR} "000" PARENT_SCOPE)
|
||||
set(${VAR} "000" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
@@ -140,7 +152,7 @@ macro(ov_parse_ci_build_number repo_root)
|
||||
ov_branch_name(GIT_BRANCH "${repo_root}")
|
||||
ov_commit_hash(GIT_COMMIT_HASH "${repo_root}")
|
||||
|
||||
if(NOT GIT_BRANCH STREQUAL "master")
|
||||
if(NOT GIT_BRANCH MATCHES "^(master|HEAD)$")
|
||||
set(GIT_BRANCH_POSTFIX "-${GIT_BRANCH}")
|
||||
endif()
|
||||
|
||||
@@ -154,28 +166,6 @@ macro(ov_parse_ci_build_number repo_root)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
macro (addVersionDefines FILE)
|
||||
message(WARNING "'addVersionDefines' is deprecated. Please, use 'ov_add_version_defines'")
|
||||
|
||||
set(__version_file ${FILE})
|
||||
if(NOT IS_ABSOLUTE ${__version_file})
|
||||
set(__version_file "${CMAKE_CURRENT_SOURCE_DIR}/${__version_file}")
|
||||
endif()
|
||||
if(NOT EXISTS ${__version_file})
|
||||
message(FATAL_ERROR "${FILE} does not exists in current source directory")
|
||||
endif()
|
||||
foreach (VAR ${ARGN})
|
||||
if (DEFINED ${VAR} AND NOT "${${VAR}}" STREQUAL "")
|
||||
set_property(
|
||||
SOURCE ${__version_file}
|
||||
APPEND
|
||||
PROPERTY COMPILE_DEFINITIONS
|
||||
${VAR}="${${VAR}}")
|
||||
endif()
|
||||
endforeach()
|
||||
unset(__version_file)
|
||||
endmacro()
|
||||
|
||||
macro (ov_add_version_defines FILE TARGET)
|
||||
set(__version_file ${FILE})
|
||||
if(NOT IS_ABSOLUTE ${__version_file})
|
||||
|
||||
@@ -51,10 +51,3 @@ function(ov_target_link_whole_archive targetName)
|
||||
target_link_libraries(${targetName} PRIVATE ${libs})
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# deprecated
|
||||
|
||||
function(ieTargetLinkWholeArchive)
|
||||
message(WARNING "'ieTargetLinkWholeArchive' is deprecated, use 'ov_target_link_whole_archive' instead")
|
||||
ov_target_link_whole_archive(${ARGN})
|
||||
endfunction()
|
||||
|
||||
@@ -2,38 +2,6 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
function(ie_generate_dev_package_config)
|
||||
# dummy check that OpenCV is here
|
||||
find_package(OpenCV QUIET)
|
||||
if(OpenCV_VERSION VERSION_LESS 3.0)
|
||||
set(OpenCV_FOUND OFF)
|
||||
endif()
|
||||
|
||||
# export all targets with prefix and use them during extra modules build
|
||||
export(TARGETS ${_OPENVINO_DEVELOPER_PACKAGE_TARGETS} NAMESPACE IE::
|
||||
APPEND FILE "${CMAKE_BINARY_DIR}/inference_engine_developer_package_targets.cmake")
|
||||
add_custom_target(ie_dev_targets DEPENDS ${_OPENVINO_DEVELOPER_PACKAGE_TARGETS})
|
||||
|
||||
set(PATH_VARS "OpenVINO_SOURCE_DIR")
|
||||
if(ENABLE_SAMPLES OR ENABLE_TESTS)
|
||||
list(APPEND PATH_VARS "gflags_BINARY_DIR")
|
||||
# if we've found system gflags
|
||||
if(gflags_DIR)
|
||||
set(gflags_BINARY_DIR "${gflags_DIR}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
configure_package_config_file("${OpenVINO_SOURCE_DIR}/cmake/templates/InferenceEngineDeveloperPackageConfig.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/InferenceEngineDeveloperPackageConfig.cmake"
|
||||
INSTALL_DESTINATION share # not used
|
||||
PATH_VARS ${PATH_VARS}
|
||||
NO_CHECK_REQUIRED_COMPONENTS_MACRO)
|
||||
|
||||
configure_file("${OpenVINO_SOURCE_DIR}/cmake/templates/InferenceEngineConfig-version.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/InferenceEngineDeveloperPackageConfig-version.cmake"
|
||||
@ONLY)
|
||||
endfunction()
|
||||
|
||||
function(ov_generate_dev_package_config)
|
||||
# dummy check that OpenCV is here
|
||||
find_package(OpenCV QUIET)
|
||||
@@ -207,7 +175,6 @@ endfunction()
|
||||
|
||||
# this OpenVINODeveloperPackageConfig.cmake is not used during extra modules build
|
||||
# since it's generated after modules are configured
|
||||
ie_generate_dev_package_config()
|
||||
ov_generate_dev_package_config()
|
||||
|
||||
# extra modules must be registered after inference_engine library
|
||||
|
||||
@@ -92,6 +92,7 @@ macro(ov_cpack_settings)
|
||||
2022.3.0 2022.3.1 2022.3.2 2022.3.3 2022.3.4 2022.3.5
|
||||
2023.0.0 2023.0.1 2023.0.2 2023.0.3
|
||||
2023.1.0
|
||||
2023.2.0
|
||||
)
|
||||
|
||||
#
|
||||
@@ -316,7 +317,7 @@ macro(ov_cpack_settings)
|
||||
list(APPEND CPACK_COMPONENT_PYOPENVINO_PACKAGE_${pyversion}_DEPENDS ${installed_plugins})
|
||||
list(APPEND CPACK_COMPONENT_PYOPENVINO_PACKAGE_${pyversion}_DEPENDS ${frontends})
|
||||
|
||||
set(CPACK_DEBIAN_PYOPENVINO_PACKAGE_${pyversion}_PACKAGE_NAME "python3-openvino")
|
||||
set(CPACK_DEBIAN_PYOPENVINO_PACKAGE_${pyversion}_PACKAGE_NAME "python3-openvino-${cpack_name_ver}")
|
||||
set(python_package "${CPACK_DEBIAN_PYOPENVINO_PACKAGE_${pyversion}_PACKAGE_NAME} (= ${cpack_full_ver})")
|
||||
set(CPACK_DEBIAN_PYOPENVINO_PACKAGE_${pyversion}_PACKAGE_DEPENDS "python3, python3-numpy")
|
||||
|
||||
@@ -367,6 +368,7 @@ macro(ov_cpack_settings)
|
||||
set(python_samples_package "${CPACK_DEBIAN_PYTHON_SAMPLES_PACKAGE_NAME} (= ${cpack_full_ver})")
|
||||
set(CPACK_DEBIAN_PYTHON_SAMPLES_PACKAGE_DEPENDS "python3, ${python_package}")
|
||||
set(CPACK_DEBIAN_PYTHON_SAMPLES_PACKAGE_ARCHITECTURE "all")
|
||||
ov_debian_generate_conflicts(${OV_CPACK_COMP_PYTHON_SAMPLES} ${conflicting_versions})
|
||||
set(python_samples_copyright "generic")
|
||||
endif()
|
||||
|
||||
|
||||
@@ -78,6 +78,7 @@ macro(ov_cpack_settings)
|
||||
2022.3.0 2022.3.1 2022.3.2 2022.3.3 2022.3.4 2022.3.5
|
||||
2023.0.0 2023.0.1 2023.0.2 2023.0.3
|
||||
2023.1.0
|
||||
2023.2.0
|
||||
)
|
||||
|
||||
find_host_program(rpmlint_PROGRAM NAMES rpmlint DOC "Path to rpmlint")
|
||||
@@ -278,7 +279,7 @@ macro(ov_cpack_settings)
|
||||
set(CPACK_COMPONENT_PYOPENVINO_PACKAGE_${pyversion_upper}_DESCRIPTION "OpenVINO Python API")
|
||||
set(CPACK_RPM_PYOPENVINO_PACKAGE_${pyversion_upper}_PACKAGE_REQUIRES
|
||||
"${core_package}, ${frontend_packages}, ${plugin_packages}, python3, python3-numpy")
|
||||
set(CPACK_RPM_PYOPENVINO_PACKAGE_${pyversion_upper}_PACKAGE_NAME "python3-openvino")
|
||||
set(CPACK_RPM_PYOPENVINO_PACKAGE_${pyversion_upper}_PACKAGE_NAME "python3-openvino-${cpack_full_ver}")
|
||||
set(python_package "${CPACK_RPM_PYOPENVINO_PACKAGE_${pyversion_upper}_PACKAGE_NAME} = ${cpack_full_ver}")
|
||||
set(${python_component}_copyright "generic")
|
||||
|
||||
@@ -328,6 +329,7 @@ macro(ov_cpack_settings)
|
||||
set(CPACK_RPM_PYTHON_SAMPLES_PACKAGE_NAME "openvino-samples-python-${cpack_name_ver}")
|
||||
set(python_samples_package "${CPACK_RPM_PYTHON_SAMPLES_PACKAGE_NAME} = ${cpack_full_ver}")
|
||||
set(CPACK_RPM_PYTHON_SAMPLES_PACKAGE_ARCHITECTURE "noarch")
|
||||
ov_rpm_generate_conflicts(${OV_CPACK_COMP_PYTHON_SAMPLES} ${conflicting_versions})
|
||||
set(python_samples_copyright "generic")
|
||||
|
||||
ov_rpm_add_rpmlint_suppression(${OV_CPACK_COMP_PYTHON_SAMPLES}
|
||||
|
||||
@@ -1,188 +0,0 @@
|
||||
# Copyright (C) 2018-2023 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
@PACKAGE_INIT@
|
||||
|
||||
include(CMakeFindDependencyMacro)
|
||||
|
||||
message(WARNING "find_package(InferenceEngineDeveloperPackage) is deprecated and will be removed in 2024.0 release. Please, use find_package(OpenVINODeveloperPackage)")
|
||||
|
||||
# TODO: remove after changing [private plugins]
|
||||
set_and_check(OpenVINO_SOURCE_DIR "@OpenVINO_SOURCE_DIR@") # NPU
|
||||
set_and_check(OpenVINO_MAIN_SOURCE_DIR "@OpenVINO_SOURCE_DIR@") # NPU
|
||||
|
||||
# Variables to export in plugin's projects
|
||||
|
||||
set(ov_options "@OV_OPTIONS@")
|
||||
list(APPEND ov_options CMAKE_CXX_COMPILER_LAUNCHER CMAKE_C_COMPILER_LAUNCHER
|
||||
CMAKE_CXX_LINKER_LAUNCHER CMAKE_C_LINKER_LAUNCHER
|
||||
CMAKE_INSTALL_PREFIX CPACK_GENERATOR)
|
||||
|
||||
if(APPLE)
|
||||
list(APPEND ov_options CMAKE_OSX_ARCHITECTURES CMAKE_OSX_DEPLOYMENT_TARGET)
|
||||
endif()
|
||||
|
||||
get_property(_OV_GENERATOR_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
|
||||
if(_OV_GENERATOR_MULTI_CONFIG)
|
||||
list(APPEND ov_options CMAKE_CONFIGURATION_TYPES)
|
||||
if(CMAKE_GENERATOR MATCHES "^Ninja Multi-Config$")
|
||||
list(APPEND ov_options CMAKE_DEFAULT_BUILD_TYPE)
|
||||
endif()
|
||||
else()
|
||||
list(APPEND ov_options CMAKE_BUILD_TYPE)
|
||||
endif()
|
||||
unset(_OV_GENERATOR_MULTI_CONFIG)
|
||||
|
||||
file(TO_CMAKE_PATH "${CMAKE_CURRENT_LIST_DIR}" cache_path)
|
||||
|
||||
message(STATUS "The following CMake options are exported from Inference Engine Developer package")
|
||||
message(" ")
|
||||
foreach(option IN LISTS ov_options)
|
||||
if(NOT DEFINED "${option}")
|
||||
load_cache("${cache_path}" READ_WITH_PREFIX "" ${option})
|
||||
endif()
|
||||
message(" ${option}: ${${option}}")
|
||||
endforeach()
|
||||
message(" ")
|
||||
|
||||
# for samples in 3rd party projects
|
||||
if(ENABLE_SAMPLES)
|
||||
set_and_check(gflags_DIR "@gflags_BINARY_DIR@")
|
||||
endif()
|
||||
|
||||
# Disable warning as error for private components
|
||||
set(CMAKE_COMPILE_WARNING_AS_ERROR OFF)
|
||||
|
||||
#
|
||||
# Content
|
||||
#
|
||||
|
||||
find_dependency(OpenVINODeveloperScripts
|
||||
PATHS "${OpenVINO_SOURCE_DIR}/cmake/developer_package"
|
||||
NO_CMAKE_FIND_ROOT_PATH
|
||||
NO_DEFAULT_PATH)
|
||||
|
||||
find_dependency(InferenceEngine
|
||||
PATHS "${CMAKE_CURRENT_LIST_DIR}"
|
||||
NO_CMAKE_FIND_ROOT_PATH
|
||||
NO_DEFAULT_PATH)
|
||||
|
||||
find_dependency(ngraph
|
||||
PATHS "${CMAKE_CURRENT_LIST_DIR}"
|
||||
NO_CMAKE_FIND_ROOT_PATH
|
||||
NO_DEFAULT_PATH)
|
||||
|
||||
if(TARGET openvino::runtime AND NOT TARGET IE::runtime)
|
||||
add_library(IE::runtime INTERFACE IMPORTED)
|
||||
set_target_properties(IE::runtime PROPERTIES
|
||||
INTERFACE_LINK_LIBRARIES openvino::runtime)
|
||||
endif()
|
||||
|
||||
# WA for cmake: it exports ngraph as IE::ngraph in the IE export list
|
||||
# while we already have ngraph export in its own export list as ngraph::ngraph
|
||||
if(TARGET ngraph::ngraph AND NOT TARGET IE::ngraph)
|
||||
add_library(IE::ngraph INTERFACE IMPORTED)
|
||||
set_target_properties(IE::ngraph PROPERTIES INTERFACE_LINK_LIBRARIES ngraph::ngraph)
|
||||
endif()
|
||||
|
||||
_ov_find_tbb()
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/inference_engine_developer_package_targets.cmake")
|
||||
|
||||
if(TARGET IE::ov_core_dev AND NOT TARGET openvino::core::dev)
|
||||
add_library(openvino::core::dev INTERFACE IMPORTED)
|
||||
set_target_properties(openvino::core::dev PROPERTIES
|
||||
INTERFACE_LINK_LIBRARIES IE::ov_core_dev)
|
||||
endif()
|
||||
|
||||
if(TARGET IE::runtime::dev AND NOT TARGET openvino::runtime::dev)
|
||||
add_library(openvino::runtime::dev INTERFACE IMPORTED)
|
||||
set_target_properties(openvino::runtime::dev PROPERTIES
|
||||
INTERFACE_LINK_LIBRARIES IE::runtime::dev)
|
||||
endif()
|
||||
|
||||
if(TARGET IE::reference AND NOT TARGET IE::ngraph_reference)
|
||||
add_library(IE::ngraph_reference INTERFACE IMPORTED)
|
||||
set_target_properties(IE::ngraph_reference PROPERTIES
|
||||
INTERFACE_LINK_LIBRARIES IE::reference)
|
||||
endif()
|
||||
|
||||
if(ENABLE_SYSTEM_PUGIXML)
|
||||
set(_ov_pugixml_pkgconfig_interface "@pugixml_FOUND@")
|
||||
set(_ov_pugixml_cmake_interface "@PugiXML_FOUND@")
|
||||
if(_ov_pugixml_pkgconfig_interface)
|
||||
find_dependency(PkgConfig)
|
||||
elseif(_ov_pugixml_cmake_interface)
|
||||
find_dependency(PugiXML)
|
||||
endif()
|
||||
if(PugiXML_FOUND)
|
||||
set_property(TARGET pugixml PROPERTY IMPORTED_GLOBAL TRUE)
|
||||
add_library(IE::pugixml ALIAS pugixml)
|
||||
elseif(PkgConfig_FOUND)
|
||||
if(${CMAKE_FIND_PACKAGE_NAME}_FIND_QUIETLY)
|
||||
set(pkg_config_quiet_arg QUIET)
|
||||
endif()
|
||||
if(${CMAKE_FIND_PACKAGE_NAME}_FIND_REQUIRED)
|
||||
set(pkg_config_required_arg REQUIRED)
|
||||
endif()
|
||||
|
||||
pkg_search_module(pugixml
|
||||
${pkg_config_quiet_arg}
|
||||
${pkg_config_required_arg}
|
||||
IMPORTED_TARGET GLOBAL
|
||||
pugixml)
|
||||
|
||||
unset(pkg_config_quiet_arg)
|
||||
unset(pkg_config_required_arg)
|
||||
|
||||
if(pugixml_FOUND)
|
||||
add_library(IE::pugixml ALIAS PkgConfig::pugixml)
|
||||
|
||||
# PATCH: on Ubuntu 18.04 pugixml.pc contains incorrect include directories
|
||||
get_target_property(interface_include_dir PkgConfig::pugixml INTERFACE_INCLUDE_DIRECTORIES)
|
||||
if(interface_include_dir AND NOT EXISTS "${interface_include_dir}")
|
||||
set_target_properties(PkgConfig::pugixml PROPERTIES
|
||||
INTERFACE_INCLUDE_DIRECTORIES "")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# debian 9 case: no cmake, no pkg-config files
|
||||
if(NOT TARGET IE::pugixml)
|
||||
find_library(PUGIXML_LIBRARY NAMES pugixml DOC "Path to pugixml library")
|
||||
if(PUGIXML_LIBRARY)
|
||||
add_library(IE::pugixml INTERFACE IMPORTED GLOBAL)
|
||||
set_target_properties(IE::pugixml PROPERTIES INTERFACE_LINK_LIBRARIES "${PUGIXML_LIBRARY}")
|
||||
else()
|
||||
message(FATAL_ERROR "Failed to find system pugixml in OpenVINO Developer Package")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(_ov_nlohmann_json_FOUND "@nlohmann_json_FOUND@")
|
||||
if(_ov_nlohmann_json_FOUND)
|
||||
find_dependency(nlohmann_json)
|
||||
set_target_properties(nlohmann_json::nlohmann_json PROPERTIES IMPORTED_GLOBAL ON)
|
||||
add_library(IE::nlohmann_json ALIAS nlohmann_json::nlohmann_json)
|
||||
endif()
|
||||
unset(_ov_nlohmann_json_FOUND)
|
||||
|
||||
# inherit OpenCV from main IE project if enabled
|
||||
if("@OpenCV_FOUND@")
|
||||
# Use OpenCV_DIR from cache only if user doesn't define OpenCV_DIR
|
||||
if(NOT OpenCV_DIR)
|
||||
load_cache("${cache_path}" READ_WITH_PREFIX "" OpenCV_DIR)
|
||||
endif()
|
||||
find_dependency(OpenCV)
|
||||
endif()
|
||||
|
||||
#
|
||||
# Extra Compile Flags
|
||||
#
|
||||
|
||||
# don't fail on strict compilation options in 3rd party modules
|
||||
ov_dev_package_no_errors()
|
||||
|
||||
# Don't threat deprecated API warnings as errors in 3rd party apps
|
||||
ov_deprecated_no_errors()
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"version": "0.5",
|
||||
"requires": [
|
||||
"zlib/1.2.13#97d5730b529b4224045fe7090592d4c1%1692672717.049",
|
||||
"xbyak/6.73#250bc3bc73379f90f255876c1c00a4cd%1691853024.351",
|
||||
"snappy/1.1.10#916523630083f6d855cb2977de8eefb6%1689780661.062",
|
||||
"rapidjson/cci.20220822#8ca51918340f3a21127822258e95ec0f%1663194355.698",
|
||||
@@ -16,7 +15,7 @@
|
||||
"ittapi/3.24.0#9246125f13e7686dee2b0c992b71db94%1682969872.743",
|
||||
"hwloc/2.9.2#1c63e2eccac57048ae226e6c946ebf0e%1688677682.002",
|
||||
"flatbuffers/23.5.26#b153646f6546daab4c7326970b6cd89c%1685838458.449",
|
||||
"ade/0.1.2c#8c03c130df6dc35186b38ba73a40a71d%1694253992.577"
|
||||
"ade/0.1.2d#f225d0a218a7c9fbb81746806c7de53d%1697752528.048"
|
||||
],
|
||||
"build_requires": [
|
||||
"zlib/1.2.13#97d5730b529b4224045fe7090592d4c1%1692672717.049",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[requires]
|
||||
ade/0.1.2c
|
||||
ade/0.1.2d
|
||||
onetbb/[>=2021.2.1]
|
||||
pugixml/[>=1.10]
|
||||
protobuf/3.21.12
|
||||
|
||||
@@ -4,187 +4,122 @@
|
||||
|
||||
add_subdirectory(snippets)
|
||||
|
||||
set(LINKCHECKER_PY "" CACHE FILEPATH "Path to linkchecker.py for documentation check dir.")
|
||||
set(ENABLE_OPENVINO_NOTEBOOKS OFF CACHE BOOL "Build with openvino notebooks")
|
||||
set(OMZ_DOCS_DIR "" CACHE PATH "Path to open_model_zoo documentation dir.")
|
||||
set(OTE_DOCS_DIR "" CACHE PATH "Path to training_extensions documentation dir.")
|
||||
set(WORKBENCH_DOCS_DIR "" CACHE PATH "Path to workbench documentation dir.")
|
||||
set(ENABLE_CPP_API OFF CACHE BOOL "Build with C/C++ API.")
|
||||
set(ENABLE_PYTHON_API OFF CACHE BOOL "Build with Python API.")
|
||||
set(ENABLE_NOTEBOOKS OFF CACHE BOOL "Build with openvino notebooks.")
|
||||
set(ENABLE_OMZ OFF CACHE BOOL "Build with open_model_zoo.")
|
||||
set(ENABLE_OVMS OFF CACHE BOOL "Build with ovms.")
|
||||
set(OVMS_DOCS_DIR "" CACHE PATH "Path to model server documentation dir.")
|
||||
set(GRAPH_CSV_DIR "" CACHE PATH "Path to the folder containing csv data for rendering graphs.")
|
||||
|
||||
if(${ENABLE_OVMS} AND (OVMS_DOCS_DIR STREQUAL ""))
|
||||
message( FATAL_ERROR "You want to build OVMS, but OVMS_DOCS_DIR variable is empty." )
|
||||
endif()
|
||||
|
||||
|
||||
function(build_docs)
|
||||
find_package(Doxygen REQUIRED dot)
|
||||
find_package(LATEX REQUIRED)
|
||||
|
||||
find_program(DOXYREST_EXECUTABLE NAMES doxyrest)
|
||||
if (NOT DOXYREST_EXECUTABLE)
|
||||
message(FATAL_ERROR "No doxyrest found. Documentation output is not available")
|
||||
endif()
|
||||
|
||||
set(DOCS_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
set(DOCS_SOURCE_DIR "${OpenVINO_SOURCE_DIR}/docs")
|
||||
set(SCRIPTS_DIR "${DOCS_SOURCE_DIR}/scripts")
|
||||
|
||||
# markdown docs
|
||||
set(MARKDOWN_INPUT "${DOCS_BUILD_DIR}")
|
||||
|
||||
# Preprocessing scripts
|
||||
set(DOXY_MD_FILTER "${SCRIPTS_DIR}/doxy_md_filter.py")
|
||||
set(PREPARE_XML_SCRIPT "${SCRIPTS_DIR}/prepare_xml.py")
|
||||
set(REMOVE_XML_SCRIPT "${SCRIPTS_DIR}/remove_xml.py")
|
||||
set(FILE_HELPER_SCRIPT "${SCRIPTS_DIR}/filehelper.py")
|
||||
set(COPY_IMAGES_SCRIPT "${SCRIPTS_DIR}/copy_images.py")
|
||||
set(DOC_TEST_DIR "${SCRIPTS_DIR}/tests")
|
||||
set(DOXYGEN_MAPPING_SCRIPT "${SCRIPTS_DIR}/create_mapping.py")
|
||||
set(BREATHE_APIDOC_SCRIPT "${SCRIPTS_DIR}/apidoc.py")
|
||||
|
||||
# out dirs
|
||||
set(XML_OUTPUT "${DOCS_BUILD_DIR}/xml")
|
||||
set(RST_OUTPUT "${DOCS_BUILD_DIR}/rst")
|
||||
# Doxygen/Sphinx setup
|
||||
set(DOXYGEN_XML_OUTPUT "${DOCS_BUILD_DIR}/xml")
|
||||
set(SPHINX_SETUP_DIR "${DOCS_SOURCE_DIR}/sphinx_setup")
|
||||
set(SPHINX_SOURCE_DIR "${DOCS_BUILD_DIR}/sphinx_source")
|
||||
set(SPHINX_OUTPUT "${DOCS_BUILD_DIR}/_build")
|
||||
|
||||
# Sphinx folders, doxyrest templates and config
|
||||
set(SPHINX_CONF_IN "${DOCS_SOURCE_DIR}/conf.py")
|
||||
set(SPHINX_TEMPLATES_IN "${DOCS_SOURCE_DIR}/_templates")
|
||||
set(SPHINX_TEMPLATES_OUT "${RST_OUTPUT}/_templates")
|
||||
set(SPHINX_CONF_OUT "${RST_OUTPUT}/conf.py")
|
||||
set(SPHINX_STATIC_IN "${DOCS_SOURCE_DIR}/_static")
|
||||
set(SPHINX_STATIC_OUT "${RST_OUTPUT}/_static")
|
||||
set(SPHINX_INDEX_IN "${DOCS_SOURCE_DIR}/index.rst")
|
||||
set(SPHINX_INDEX_OUT "${RST_OUTPUT}/index.rst")
|
||||
set(API_DOCS_IN "${DOCS_SOURCE_DIR}/api")
|
||||
set(API_DOCS_OUT "${RST_OUTPUT}/api")
|
||||
set(DOXYREST_IN "${DOCS_SOURCE_DIR}/doxyrest")
|
||||
set(DOXYREST_OUT "${DOCS_BUILD_DIR}/doxyrest")
|
||||
set(DOXYREST_SPHINX_IN "${DOCS_SOURCE_DIR}/doxyrest-sphinx")
|
||||
set(DOXYREST_SPHINX_OUT "${RST_OUTPUT}/doxyrest-sphinx")
|
||||
set(DOXYREST_CONFIG_IN "${DOCS_SOURCE_DIR}/doxyrest-config.lua")
|
||||
set(DOXYREST_CONFIG_OUT "${DOCS_BUILD_DIR}/doxyrest-config.lua")
|
||||
configure_file(${DOXYREST_CONFIG_IN} ${DOXYREST_CONFIG_OUT} @ONLY)
|
||||
configure_file(${SPHINX_CONF_IN} ${SPHINX_CONF_OUT} @ONLY)
|
||||
|
||||
# Doxygen config
|
||||
set(DOXYFILE_SOURCE "${DOCS_SOURCE_DIR}/Doxyfile.config")
|
||||
set(DOXYFILE_BUILD "${DOCS_BUILD_DIR}/Doxyfile.config")
|
||||
configure_file(${DOXYFILE_SOURCE} ${DOXYFILE_BUILD} @ONLY)
|
||||
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO articles")
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${FILE_HELPER_SCRIPT}
|
||||
--filetype=rst
|
||||
--input_dir=${OpenVINO_SOURCE_DIR}
|
||||
--output_dir=${DOCS_BUILD_DIR}/openvino
|
||||
--exclude_dir=${DOCS_BUILD_DIR})
|
||||
--output_dir=${SPHINX_SOURCE_DIR}
|
||||
--exclude_dir=${SPHINX_SOURCE_DIR})
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO articles")
|
||||
|
||||
# include additional repositories
|
||||
if(${ENABLE_CPP_API})
|
||||
# Doxygen config
|
||||
set(DOXYFILE_SOURCE "${DOCS_SOURCE_DIR}/Doxyfile.config")
|
||||
set(DOXYFILE_BUILD "${DOCS_BUILD_DIR}/Doxyfile.config")
|
||||
configure_file(${DOXYFILE_SOURCE} ${DOXYFILE_BUILD} @ONLY)
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO C/C++ API reference")
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${REMOVE_XML_SCRIPT} ${DOXYGEN_XML_OUTPUT})
|
||||
list(APPEND commands COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYFILE_BUILD})
|
||||
list(APPEND post_commands COMMAND ${Python3_EXECUTABLE} ${BREATHE_APIDOC_SCRIPT} ${DOXYGEN_XML_OUTPUT} -o "${SPHINX_SOURCE_DIR}/api/c_cpp_api" -m -T -p openvino -g class,group,struct,union,enum)
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO C/C++ API reference")
|
||||
endif()
|
||||
|
||||
# build with openvino notebooks
|
||||
if(ENABLE_OPENVINO_NOTEBOOKS)
|
||||
if(${ENABLE_PYTHON_API})
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO Python API")
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} -m pip install openvino)
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO Python API")
|
||||
endif()
|
||||
|
||||
if(${ENABLE_NOTEBOOKS})
|
||||
set(NBDOC_SCRIPT "${DOCS_SOURCE_DIR}/nbdoc/nbdoc.py")
|
||||
list(PREPEND commands
|
||||
COMMAND ${Python3_EXECUTABLE} "${NBDOC_SCRIPT}" "${DOCS_SOURCE_DIR}/notebooks" "${RST_OUTPUT}/notebooks"
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO notebooks")
|
||||
list(APPEND commands
|
||||
COMMAND ${Python3_EXECUTABLE} "${NBDOC_SCRIPT}" "${DOCS_SOURCE_DIR}/notebooks" "${SPHINX_SOURCE_DIR}/notebooks"
|
||||
)
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO notebooks")
|
||||
endif()
|
||||
|
||||
if(GRAPH_CSV_DIR)
|
||||
set(GRAPH_CSV_DIR_OUT "${RST_OUTPUT}/csv")
|
||||
list(APPEND commands
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory "${GRAPH_CSV_DIR}" "${GRAPH_CSV_DIR_OUT}"
|
||||
)
|
||||
if(${ENABLE_OVMS})
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OVMS")
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${FILE_HELPER_SCRIPT}
|
||||
--filetype=md
|
||||
--input_dir=${OVMS_DOCS_DIR}
|
||||
--output_dir=${SPHINX_SOURCE_DIR}
|
||||
--exclude_dir=${SPHINX_SOURCE_DIR})
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OVMS")
|
||||
endif()
|
||||
|
||||
list(APPEND commands
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${API_DOCS_IN}/api_reference.rst ${API_DOCS_OUT}/api_reference.rst
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${API_DOCS_IN}/ie_python_api ${API_DOCS_OUT}/ie_python_api
|
||||
)
|
||||
|
||||
# omz doc files
|
||||
if(EXISTS "${OMZ_DOCS_DIR}")
|
||||
get_filename_component(OMZ_DOCS_DIR "${OMZ_DOCS_DIR}" ABSOLUTE)
|
||||
if(${ENABLE_OMZ})
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OMZ")
|
||||
list(APPEND commands
|
||||
COMMAND ${Python3_EXECUTABLE} ${OMZ_DOCS_DIR}/ci/prepare-documentation.py ${CMAKE_BINARY_DIR}/open_model_zoo)
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
|
||||
COMMAND ${Python3_EXECUTABLE} ${OpenVINO_SOURCE_DIR}/thirdparty/open_model_zoo/ci/prepare-documentation.py ${CMAKE_BINARY_DIR}/open_model_zoo)
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${FILE_HELPER_SCRIPT}
|
||||
--filetype=md
|
||||
--input_dir=${CMAKE_BINARY_DIR}/open_model_zoo
|
||||
--output_dir=${DOCS_BUILD_DIR}/open_model_zoo)
|
||||
--output_dir=${SPHINX_SOURCE_DIR}
|
||||
--exclude_dir=${SPHINX_SOURCE_DIR})
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OMZ")
|
||||
endif()
|
||||
|
||||
# workbench doc files
|
||||
if(EXISTS "${WORKBENCH_DOCS_DIR}")
|
||||
get_filename_component(WORKBENCH_DOCS_DIR "${WORKBENCH_DOCS_DIR}" ABSOLUTE)
|
||||
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
|
||||
--input_dir=${WORKBENCH_DOCS_DIR}
|
||||
--output_dir=${DOCS_BUILD_DIR}/workbench)
|
||||
endif()
|
||||
|
||||
# ote doc files
|
||||
if(EXISTS "${OTE_DOCS_DIR}")
|
||||
get_filename_component(WORKBENCH_DOCS_DIR "${OTE_DOCS_DIR}" ABSOLUTE)
|
||||
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
|
||||
--input_dir=${OTE_DOCS_DIR}
|
||||
--output_dir=${DOCS_BUILD_DIR}/ote)
|
||||
endif()
|
||||
|
||||
# ovms doc files
|
||||
if(EXISTS "${OVMS_DOCS_DIR}")
|
||||
get_filename_component(OVMS_DOCS_DIR "${OVMS_DOCS_DIR}" ABSOLUTE)
|
||||
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
|
||||
--input_dir=${OVMS_DOCS_DIR}
|
||||
--output_dir=${DOCS_BUILD_DIR}/ovms)
|
||||
endif()
|
||||
|
||||
add_custom_target(preprocess_docs
|
||||
COMMENT "Preprocess documentation"
|
||||
VERBATIM)
|
||||
|
||||
# Preprocess docs
|
||||
add_custom_target(preprocess_docs
|
||||
COMMAND ${CMAKE_COMMAND} -E remove_directory ${SPHINX_SOURCE_DIR}
|
||||
${commands}
|
||||
WORKING_DIRECTORY ${DOCS_BUILD_DIR}
|
||||
VERBATIM)
|
||||
|
||||
add_custom_command(TARGET preprocess_docs
|
||||
POST_BUILD
|
||||
${commands}
|
||||
WORKING_DIRECTORY ${DOCS_BUILD_DIR}
|
||||
COMMENT "Preprocess documentation"
|
||||
VERBATIM)
|
||||
|
||||
add_custom_target(doxygen_xml
|
||||
DEPENDS preprocess_docs
|
||||
COMMAND ${Python3_EXECUTABLE} ${REMOVE_XML_SCRIPT} ${XML_OUTPUT}
|
||||
COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYFILE_BUILD}
|
||||
WORKING_DIRECTORY ${DOCS_BUILD_DIR}
|
||||
COMMENT "Generate doxygen XML output"
|
||||
VERBATIM)
|
||||
|
||||
# Post-process docs
|
||||
add_custom_command(TARGET doxygen_xml
|
||||
POST_BUILD
|
||||
COMMAND ${Python3_EXECUTABLE} ${PREPARE_XML_SCRIPT} ${XML_OUTPUT}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${DOXYREST_IN} ${DOXYREST_OUT}
|
||||
COMMAND ${DOXYREST_EXECUTABLE} -c ${DOXYREST_CONFIG_OUT}
|
||||
COMMAND ${Python3_EXECUTABLE} ${COPY_IMAGES_SCRIPT} ${XML_OUTPUT} ${RST_OUTPUT}
|
||||
COMMAND ${Python3_EXECUTABLE} ${DOXYGEN_MAPPING_SCRIPT} ${XML_OUTPUT} ${DOCS_BUILD_DIR} ${OpenVINO_SOURCE_DIR}/../
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${SPHINX_INDEX_IN} ${SPHINX_INDEX_OUT}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${SPHINX_TEMPLATES_IN} ${SPHINX_TEMPLATES_OUT}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${DOXYREST_IN} ${DOXYREST_OUT}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${DOXYREST_SPHINX_IN} ${DOXYREST_SPHINX_OUT}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${SPHINX_STATIC_IN} ${SPHINX_STATIC_OUT}
|
||||
COMMENT "Prepare xml"
|
||||
COMMAND ${Python3_EXECUTABLE} ${COPY_IMAGES_SCRIPT} ${DOXYGEN_XML_OUTPUT} ${SPHINX_SOURCE_DIR}
|
||||
COMMAND ${Python3_EXECUTABLE} ${DOXYGEN_MAPPING_SCRIPT} ${DOXYGEN_XML_OUTPUT} ${DOCS_BUILD_DIR} ${OpenVINO_SOURCE_DIR}/../
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${SPHINX_SETUP_DIR} ${SPHINX_SOURCE_DIR}
|
||||
${post_commands}
|
||||
VERBATIM)
|
||||
|
||||
# Build docs
|
||||
add_custom_target(sphinx_docs
|
||||
DEPENDS doxygen_xml
|
||||
COMMAND sphinx-build -q -j auto -w ${DOCS_BUILD_DIR}/sphinx.log -b html ${RST_OUTPUT} ${SPHINX_OUTPUT}
|
||||
WORKING_DIRECTORY ${RST_OUTPUT}
|
||||
DEPENDS preprocess_docs
|
||||
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED sphinx documentation build"
|
||||
COMMAND sphinx-build -j auto -w ${DOCS_BUILD_DIR}/sphinx.log -b html ${SPHINX_SOURCE_DIR} ${SPHINX_OUTPUT}
|
||||
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED sphinx documentation build"
|
||||
WORKING_DIRECTORY ${SPHINX_SOURCE_DIR}
|
||||
VERBATIM)
|
||||
|
||||
set_target_properties(doxygen_xml sphinx_docs
|
||||
PROPERTIES FOLDER docs)
|
||||
set_target_properties(preprocess_docs sphinx_docs PROPERTIES FOLDER docs)
|
||||
|
||||
|
||||
find_program(browser NAMES xdg-open)
|
||||
if(browser)
|
||||
add_custom_target(ie_docs_open
|
||||
COMMAND ${browser} "${SPHINX_OUTPUT}/index.html"
|
||||
DEPENDS sphinx_docs
|
||||
COMMENT "Open OpenVINO documentation"
|
||||
VERBATIM)
|
||||
set_target_properties(ie_docs_open PROPERTIES FOLDER docs)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
if(ENABLE_DOCS)
|
||||
|
||||
@@ -829,8 +829,7 @@ WARN_LOGFILE = "@DOCS_BUILD_DIR@/doxygen.log"
|
||||
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
|
||||
# Note: If this tag is empty the current directory is searched.
|
||||
|
||||
INPUT = "@MARKDOWN_INPUT@" \
|
||||
"@OpenVINO_SOURCE_DIR@/src/frontends/common/include/" \
|
||||
INPUT = "@OpenVINO_SOURCE_DIR@/src/frontends/common/include/" \
|
||||
"@OpenVINO_SOURCE_DIR@/src/common/conditional_compilation/include/" \
|
||||
"@OpenVINO_SOURCE_DIR@/src/common/itt/include/" \
|
||||
"@OpenVINO_SOURCE_DIR@/src/common/low_precision_transformations/include/" \
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
# Representation of low-precision models {#openvino_docs_ie_plugin_dg_lp_representation}
|
||||
The goal of this document is to describe how optimized models are represented in OpenVINO Intermediate Representation (IR) and provide guidance on interpretation rules for such models at runtime.
|
||||
Currently, there are two groups of optimization methods that can influence on the IR after applying them to the full-precision model:
|
||||
- **Sparsity**. It is represented by zeros inside the weights and this is up to the hardware plugin how to interpret these zeros (use weights as is or apply special compression algorithms and sparse arithmetic). No additional mask is provided with the model.
|
||||
- **Quantization**. The rest of this document is dedicated to the representation of quantized models.
|
||||
|
||||
## Representation of quantized models
|
||||
The OpenVINO Toolkit represents all the quantized models using the so-called FakeQuantize operation (see the description in [this document](@ref openvino_docs_ops_quantization_FakeQuantize_1)). This operation is very expressive and allows mapping values from arbitrary input and output ranges. The whole idea behind that is quite simple: we project (discretize) the input values to the low-precision data type using affine transformation (with clamp and rounding) and then reproject discrete values back to the original range and data type. It can be considered as an emulation of the quantization process which happens at runtime.
|
||||
In order to be able to execute a particular DL operation in low-precision all its inputs should be quantized i.e. should have FakeQuantize between operation and data blobs. The figure below shows an example of quantized Convolution which contains two FakeQuantize nodes: one for weights and one for activations (bias is quantized using the same parameters).
|
||||
![quantized_convolution]
|
||||
<div align="center">Figure 1. Example of quantized Convolution operation.</div>
|
||||
|
||||
Starting from OpenVINO 2020.2 release all the quantized models are represented in the compressed form. It means that the weights of low-precision operations are converted into the target precision (e.g. INT8). It helps to substantially reduce the model size. The rest of the parameters can be represented in FLOAT32 or FLOAT16 precision depending on the input full-precision model used in the quantization process. Fig. 2 below shows an example of the part of the compressed IR.
|
||||
![quantized_model_example]
|
||||
<div align="center">Figure 2. Example of compressed quantized model.</div>
|
||||
|
||||
[quantized_convolution]: images/quantized_convolution.png
|
||||
[quantized_model_example]: images/quantized_model_example.png
|
||||
@@ -1,112 +0,0 @@
|
||||
# [LEGACY] Extending Model Optimizer with Caffe Python Layers {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Learn how to extract operator attributes in Model Optimizer to
|
||||
support a custom Caffe operation written only in Python.
|
||||
|
||||
.. danger::
|
||||
|
||||
The code described here has been **deprecated!** Do not use it to avoid working with a legacy solution. It will be kept for some time to ensure backwards compatibility, but **you should not use** it in contemporary applications.
|
||||
|
||||
This guide describes a deprecated TensorFlow conversion method. The guide on the new and recommended method, using a new frontend, can be found in the :doc:`Frontend Extensions <openvino_docs_Extensibility_UG_Frontend_Extensions>` article.
|
||||
|
||||
This article provides instructions on how to support a custom Caffe operation written only in Python. For example, the
|
||||
`Faster-R-CNN model <https://dl.dropboxusercontent.com/s/o6ii098bu51d139/faster_rcnn_models.tgz?dl=0>`__ implemented in
|
||||
Caffe contains a custom proposal layer written in Python. The layer is described in the
|
||||
`Faster-R-CNN prototxt <https://raw.githubusercontent.com/rbgirshick/py-faster-rcnn/master/models/pascal_voc/VGG16/faster_rcnn_end2end/test.prototxt>`__ in the following way:
|
||||
|
||||
.. code-block:: sh
|
||||
|
||||
layer {
|
||||
name: 'proposal'
|
||||
type: 'Python'
|
||||
bottom: 'rpn_cls_prob_reshape'
|
||||
bottom: 'rpn_bbox_pred'
|
||||
bottom: 'im_info'
|
||||
top: 'rois'
|
||||
python_param {
|
||||
module: 'rpn.proposal_layer'
|
||||
layer: 'ProposalLayer'
|
||||
param_str: "'feat_stride': 16"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
This article describes only a procedure on how to extract operator attributes in Model Optimizer. The rest of the
|
||||
operation enabling pipeline and information on how to support other Caffe operations (written in C++) is described in
|
||||
the :doc:`Customize Model Optimizer <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer>` guide.
|
||||
|
||||
========================================
|
||||
Writing Extractor for Caffe Python Layer
|
||||
========================================
|
||||
|
||||
Custom Caffe Python layers have an attribute ``type`` (defining the type of the operation) equal to ``Python`` and two
|
||||
mandatory attributes ``module`` and ``layer`` in the ``python_param`` dictionary. The ``module`` defines the Python module name
|
||||
with the layer implementation, while ``layer`` value is an operation type defined by a user. In order to extract
|
||||
attributes for such an operation it is necessary to implement extractor class inherited from the
|
||||
``CaffePythonFrontExtractorOp`` class instead of ``FrontExtractorOp`` class, used for standard framework layers. The ``op``
|
||||
class attribute value should be set to the ``module + "." + layer`` value so the extractor is triggered for this kind of
|
||||
operation.
|
||||
|
||||
Below is a simplified example of the extractor for the custom operation Proposal from the mentioned Faster-R-CNN model.
|
||||
The full code with additional checks can be found `here <https://github.com/openvinotoolkit/openvino/blob/releases/2022/1/tools/mo/openvino/tools/mo/front/caffe/proposal_python_ext.py>`__.
|
||||
|
||||
The sample code uses operation ``ProposalOp`` which corresponds to ``Proposal`` operation described in the :doc:`Available Operations Sets <openvino_docs_ops_opset>`
|
||||
page. For a detailed explanation of the extractor, refer to the source code below.
|
||||
|
||||
.. code-block:: py
|
||||
:force:
|
||||
|
||||
from openvino.tools.mo.ops.proposal import ProposalOp
|
||||
from openvino.tools.mo.front.extractor import CaffePythonFrontExtractorOp
|
||||
|
||||
|
||||
class ProposalPythonFrontExtractor(CaffePythonFrontExtractorOp):
|
||||
op = 'rpn.proposal_layer.ProposalLayer' # module + "." + layer
|
||||
enabled = True # extractor is enabled
|
||||
|
||||
@staticmethod
|
||||
def extract_proposal_params(node, defaults):
|
||||
param = node.pb.python_param # get the protobuf message representation of the layer attributes
|
||||
# parse attributes from the layer protobuf message to a Python dictionary
|
||||
attrs = CaffePythonFrontExtractorOp.parse_param_str(param.param_str)
|
||||
update_attrs = defaults
|
||||
|
||||
# the operation expects ratio and scale values to be called "ratio" and "scale" while Caffe uses different names
|
||||
if 'ratios' in attrs:
|
||||
attrs['ratio'] = attrs['ratios']
|
||||
del attrs['ratios']
|
||||
if 'scales' in attrs:
|
||||
attrs['scale'] = attrs['scales']
|
||||
del attrs['scales']
|
||||
|
||||
update_attrs.update(attrs)
|
||||
ProposalOp.update_node_stat(node, update_attrs) # update the node attributes
|
||||
|
||||
@classmethod
|
||||
def extract(cls, node):
|
||||
# define default values for the Proposal layer attributes
|
||||
defaults = {
|
||||
'feat_stride': 16,
|
||||
'base_size': 16,
|
||||
'min_size': 16,
|
||||
'ratio': [0.5, 1, 2],
|
||||
'scale': [8, 16, 32],
|
||||
'pre_nms_topn': 6000,
|
||||
'post_nms_topn': 300,
|
||||
'nms_thresh': 0.7
|
||||
}
|
||||
cls.extract_proposal_params(node, defaults)
|
||||
return cls.enabled
|
||||
|
||||
====================
|
||||
Additional Resources
|
||||
====================
|
||||
|
||||
* :doc:`Model Optimizer Extensibility <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer>`
|
||||
* :doc:`Graph Traversal and Modification Using Ports and Connections <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer_Model_Optimizer_Ports_Connections>`
|
||||
* :doc:`Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions>`
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,62 +0,0 @@
|
||||
# [LEGACY] Model Optimizer Extensions {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Learn about deprecated extensions, which enable injecting logic
|
||||
to the model conversion pipeline without changing the Model
|
||||
Optimizer core code.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:hidden:
|
||||
|
||||
openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Operation
|
||||
openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Extractor
|
||||
openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Transformation_Extensions
|
||||
|
||||
.. danger::
|
||||
|
||||
The code described here has been **deprecated!** Do not use it to avoid working with a legacy solution. It will be kept for some time to ensure backwards compatibility, but **you should not use** it in contemporary applications.
|
||||
|
||||
This guide describes a deprecated TensorFlow conversion method. The guide on the new and recommended method, using a new frontend, can be found in the :doc:`Frontend Extensions <openvino_docs_Extensibility_UG_Frontend_Extensions>` article.
|
||||
|
||||
Model Optimizer extensions enable you to inject some logic to the model conversion pipeline without changing the Model
|
||||
Optimizer core code. There are three types of the Model Optimizer extensions:
|
||||
|
||||
1. :doc:`Model Optimizer operation <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Operation>`.
|
||||
2. A :doc:`framework operation extractor <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Extractor>`.
|
||||
3. A :doc:`model transformation <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Transformation_Extensions>`, which can be executed during front, middle or back phase of the model conversion.
|
||||
|
||||
An extension is just a plain text file with a Python code. The file should contain a class (or classes) inherited from
|
||||
one of extension base classes. Extension files should be saved to a directory with the following structure:
|
||||
|
||||
.. code-block:: sh
|
||||
|
||||
./<MY_EXT>/
|
||||
ops/ - custom operations
|
||||
front/ - framework independent front transformations
|
||||
<FRAMEWORK_1>/ - front transformations for <FRAMEWORK_1> models only and extractors for <FRAMEWORK_1> operations
|
||||
<FRAMEWORK_2>/ - front transformations for <FRAMEWORK_2> models only and extractors for <FRAMEWORK_2> operations
|
||||
...
|
||||
middle/ - middle transformations
|
||||
back/ - back transformations
|
||||
|
||||
Model Optimizer uses the same layout internally to keep built-in extensions. The only exception is that the
|
||||
``mo/ops/`` directory is also used as a source of the Model Optimizer operations due to historical reasons.
|
||||
|
||||
.. note::
|
||||
The name of a root directory with extensions should not be equal to "extensions" because it will result in a name conflict with the built-in Model Optimizer extensions.
|
||||
|
||||
.. note::
|
||||
Model Optimizer itself is built by using these extensions, so there is a huge number of examples of their usage in the Model Optimizer code.
|
||||
|
||||
====================
|
||||
Additional Resources
|
||||
====================
|
||||
|
||||
* :doc:`Model Optimizer Extensibility <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer>`
|
||||
* :doc:`Graph Traversal and Modification Using Ports and Connections <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer_Model_Optimizer_Ports_Connections>`
|
||||
* :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>`
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,115 +0,0 @@
|
||||
# [LEGACY] Operation Extractor {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Extractor}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Learn about a deprecated generic extension in Model Optimizer,
|
||||
which provides the operation extractor usable for all model
|
||||
frameworks.
|
||||
|
||||
|
||||
.. danger::
|
||||
|
||||
The code described here has been **deprecated!** Do not use it to avoid working with a legacy solution. It will be kept for some time to ensure backwards compatibility, but **you should not use** it in contemporary applications.
|
||||
|
||||
This guide describes a deprecated TensorFlow conversion method. The guide on the new and recommended method, using a new frontend, can be found in the :doc:`Frontend Extensions <openvino_docs_Extensibility_UG_Frontend_Extensions>` article.
|
||||
|
||||
Model Optimizer runs specific extractor for each operation in the model during the model loading.
|
||||
|
||||
There are several types of Model Optimizer extractor extensions:
|
||||
|
||||
1. The generic one, which is described in this article.
|
||||
2. The special extractor for Caffe models with Python layers. This kind of extractor is described in the :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>` guide.
|
||||
|
||||
Generic extension provides a generic mechanism for the operation extractor applicable for all frameworks. Model Optimizer provides the ``mo.front.extractor.FrontExtractorOp`` class as a base class to implement the extractor. It has the ``extract`` class method, which gets the only parameter ``Node``, which corresponds to the graph node to extract data from. The operation description in the original framework format is stored in the attribute ``pb`` of the node. The extractor goal is to parse this attribute and save necessary attributes to the corresponding node of the graph. Consider the extractor for the ``Const`` TensorFlow operation (refer to the ``extensions/front/tf/const_ext.py`` file):
|
||||
|
||||
.. code-block:: py
|
||||
:force:
|
||||
|
||||
from openvino.tools.mo.front.extractor import FrontExtractorOp
|
||||
from openvino.tools.mo.front.tf.extractors.utils import tf_dtype_extractor, tf_tensor_shape, tf_tensor_content
|
||||
from openvino.tools.mo.ops.const import Const
|
||||
|
||||
|
||||
class ConstExtractor(FrontExtractorOp):
|
||||
# The "op" class attribute defines a type of the operation in the framework (in this case it is a TensorFlow),
|
||||
# for which the extractor should be triggered.
|
||||
op = 'Const'
|
||||
enabled = True # The flag that indicates that this extractor is enabled.
|
||||
|
||||
@classmethod
|
||||
def extract(cls, node): # The entry point of the extractor.
|
||||
# The `node.pb` attribute stores the TensorFlow representation of the operation, which is a Protobuf message of the
|
||||
# specific format. In particular, the message contains the attribute called "value" containing the description of
|
||||
# the constant. The string "pb.attr["value"].tensor" is just a Python binding for Protobuf message parsing.
|
||||
pb_tensor = node.pb.attr["value"].tensor
|
||||
# Get the shape of the tensor from the protobuf message, using the helper function "tf_tensor_shape".
|
||||
shape = tf_tensor_shape(pb_tensor.tensor_shape)
|
||||
# Create a dictionary with necessary attributes.
|
||||
attrs = {
|
||||
'shape': shape,
|
||||
# Get the tensor value, using "tf_tensor_content" helper function.
|
||||
'value': tf_tensor_content(pb_tensor.dtype, shape, pb_tensor),
|
||||
# Get the tensor data type, using "tf_dtype_extractor" helper function.
|
||||
'data_type': tf_dtype_extractor(pb_tensor.dtype),
|
||||
}
|
||||
# Update the node attributes, using default attributes from the "Const" operation and attributes saved to the
|
||||
# "attrs" dictionary.
|
||||
Const.update_node_stat(node, attrs)
|
||||
return cls.enabled
|
||||
|
||||
Consider another example with an extractor of the ``Constant`` ONNX operation (refer to the ``extensions/front/onnx/const_ext.py`` file):
|
||||
|
||||
.. code-block:: py
|
||||
:force:
|
||||
|
||||
from onnx import numpy_helper
|
||||
from onnx.numpy_helper import to_array
|
||||
|
||||
from openvino.tools.mo.front.extractor import FrontExtractorOp
|
||||
from openvino.tools.mo.front.onnx.extractors.utils import onnx_attr
|
||||
from openvino.tools.mo.ops.const import Const
|
||||
|
||||
|
||||
class ConstantExtractor(FrontExtractorOp):
|
||||
op = 'Constant'
|
||||
enabled = True
|
||||
|
||||
@classmethod
|
||||
def extract(cls, node):
|
||||
# Use "onnx_attr" helper method, which parses the Protobuf representation of the operation saved in the "node".
|
||||
# Gets the value of the attribute with name "value" as "TensorProto" type (specified with a keyword "t").
|
||||
pb_value = onnx_attr(node, 'value', 't')
|
||||
# Use "numpy_helper.to_array()" ONNX helper method to convert "TensorProto" object to a numpy array.
|
||||
value = numpy_helper.to_array(pb_value)
|
||||
|
||||
attrs = {
|
||||
'data_type': value.dtype,
|
||||
'value': value,
|
||||
}
|
||||
# Update the node attributes, using default attributes from the "Const" operation and attributes saved to the
|
||||
# "attrs" dictionary.
|
||||
Const.update_node_stat(node, attrs)
|
||||
return cls.enabled
|
||||
|
||||
The extractors for operations from different frameworks work similarly. The only difference is in the helper methods used to parse operation attributes encoded with a framework-specific representation.
|
||||
|
||||
A common practice is to use ``update_node_stat()`` method of the dedicated ``Op`` class to update the node attributes. This method does the following:
|
||||
|
||||
1. Sets values for common attributes like ``op``, ``type``, ``infer``, ``in_ports_count``, ``out_ports_count``, ``version`` to values specific to the dedicated operation (``Const`` operation in this case).
|
||||
2. Uses ``supported_attrs()`` and ``backend_attrs()`` methods, defined in the ``Op`` class to update specific node attribute ``IE``. The IR emitter uses the value stored in the ``IE`` attribute to pre-process attribute values and save them to IR.
|
||||
3. Optionally sets additional attributes provided to the ``update_node_stat()`` function as a second parameter. Usually these attributes are parsed from the particular instance of the operation.
|
||||
|
||||
.. note::
|
||||
Model Optimizer uses numpy arrays to store values and numpy arrays of ``np.int64`` type to store shapes in the graph.
|
||||
|
||||
====================
|
||||
Additional Resources
|
||||
====================
|
||||
|
||||
* :doc:`Model Optimizer Extensibility <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer>`
|
||||
* :doc:`Graph Traversal and Modification Using Ports and Connections <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer_Model_Optimizer_Ports_Connections>`
|
||||
* :doc:`Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions>`
|
||||
* :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>`
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,188 +0,0 @@
|
||||
# [LEGACY] Graph Traversal and Modification {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer_Model_Optimizer_Ports_Connections}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Learn about deprecated APIs and the Port and Connection classes
|
||||
in Model Optimizer used for graph traversal and transformation.
|
||||
|
||||
.. danger::
|
||||
|
||||
The code described here has been **deprecated!** Do not use it to avoid working with a legacy solution. It will be kept for some time to ensure backwards compatibility, but **you should not use** it in contemporary applications.
|
||||
|
||||
This guide describes a deprecated TensorFlow conversion method. The guide on the new and recommended method, using a new frontend, can be found in the :doc:`Frontend Extensions <openvino_docs_Extensibility_UG_Frontend_Extensions>` article.
|
||||
|
||||
There are three APIs for a graph traversal and transformation used in the Model Optimizer:
|
||||
|
||||
1. The API provided with the ``networkx`` Python library for the ``networkx.MultiDiGraph`` class, which is the base class for
|
||||
the ``mo.graph.graph.Graph`` object. For example, the following methods belong to this API level:
|
||||
|
||||
* ``graph.add_edges_from([list])``,
|
||||
* ``graph.add_node(x, attrs)``,
|
||||
* ``graph.out_edges(node_id)``
|
||||
* other methods where ``graph`` is a an instance of the ``networkx.MultiDiGraph`` class.
|
||||
|
||||
**This is the lowest-level API. Avoid using it in the Model Optimizer transformations**. For more details, refer to the :ref:`Model Representation in Memory <mo_model_representation_in_memory>` section.
|
||||
|
||||
2. The API built around the ``mo.graph.graph.Node`` class. The ``Node`` class is the primary class to work with graph nodes
|
||||
and their attributes. Examples of such methods and functions are:
|
||||
|
||||
* ``node.in_node(y)``,
|
||||
* ``node.out_node(x)``,
|
||||
* ``node.get_outputs()``,
|
||||
* ``node.insert_node_after(n1, y)``,
|
||||
* ``create_edge(n1, n2)``
|
||||
|
||||
**There are some "Node" class methods not recommended for use and some functions defined in the mo.graph.graph have been deprecated**. For more details, refer to the ``mo/graph/graph.py`` file.
|
||||
|
||||
3. The high-level API called Model Optimizer Graph API, which uses ``mo.graph.graph.Graph``, ``mo.graph.port.Port`` and
|
||||
``mo.graph.connection.Connection`` classes. For example, the following methods belong to this API level:
|
||||
|
||||
* ``node.in_port(x)``,
|
||||
* ``node.out_port(y)``,
|
||||
* ``port.get_connection()``,
|
||||
* ``connection.get_source()``,
|
||||
* ``connection.set_destination(dest_port)``
|
||||
|
||||
**This is the recommended API for the Model Optimizer transformations and operations implementation**.
|
||||
|
||||
The main benefit of using the Model Optimizer Graph API is that it hides some internal implementation details (the fact that
|
||||
the graph contains data nodes), provides API to perform safe and predictable graph manipulations, and adds operation
|
||||
semantic to the graph. This is achieved with introduction of concepts of ports and connections.
|
||||
|
||||
.. note::
|
||||
This article is dedicated to the Model Optimizer Graph API only and does not cover other two non-recommended APIs.
|
||||
|
||||
.. _mo_intro_ports:
|
||||
|
||||
=====
|
||||
Ports
|
||||
=====
|
||||
|
||||
An operation semantic describes how many inputs and outputs the operation has. For example,
|
||||
:doc:`Parameter <openvino_docs_ops_infrastructure_Parameter_1>` and :doc:`Const <openvino_docs_ops_infrastructure_Constant_1>` operations have no
|
||||
inputs and have one output, :doc:`ReLU <openvino_docs_ops_activation_ReLU_1>` operation has one input and one output,
|
||||
:doc:`Split <openvino_docs_ops_movement_Split_1>` operation has 2 inputs and a variable number of outputs depending on the value of the
|
||||
attribute ``num_splits``.
|
||||
|
||||
Each operation node in the graph (an instance of the ``Node`` class) has 0 or more input and output ports (instances of
|
||||
the ``mo.graph.port.Port`` class). The ``Port`` object has several attributes:
|
||||
|
||||
* ``node`` - the instance of the ``Node`` object the port belongs to.
|
||||
* ``idx`` - the port number. Input and output ports are numbered independently, starting from ``0``. Thus,
|
||||
:doc:`ReLU <openvino_docs_ops_activation_ReLU_1>` operation has one input port (with index ``0``) and one output port (with index ``0``).
|
||||
* ``type`` - the type of the port. Could be equal to either ``"in"`` or ``"out"``.
|
||||
* ``data`` - the object that should be used to get attributes of the corresponding data node. This object has methods ``get_shape()`` / ``set_shape()`` and ``get_value()`` / ``set_value()`` to get/set shape/value of the corresponding data node. For example, ``in_port.data.get_shape()`` returns an input shape of a tensor connected to input port ``in_port`` (``in_port.type == 'in'``), ``out_port.data.get_value()`` returns a value of a tensor produced from output port ``out_port`` (``out_port.type == 'out'``).
|
||||
|
||||
.. note::
|
||||
Functions ``get_shape()`` and ``get_value()`` return ``None`` until the partial inference phase. For more information about model conversion phases, refer to the :ref:`Model Conversion Pipeline <mo_model_conversion_pipeline>`. For information about partial inference phase, see the :ref:`Partial Inference <mo_partial_inference>`.
|
||||
|
||||
There are several methods of the ``Node`` class to get the instance of a corresponding port:
|
||||
|
||||
* ``in_port(x)`` and ``out_port(x)`` to get the input/output port with number ``x``.
|
||||
* ``in_ports()`` and ``out_ports()`` to get a dictionary, where key is a port number and the value is the corresponding input/output port.
|
||||
|
||||
Attributes ``in_ports_count`` and ``out_ports_count`` of the ``Op`` class instance define default number of input and output
|
||||
ports to be created for the ``Node``. However, additional input/output ports can be added using methods
|
||||
``add_input_port()`` and ``add_output_port()``. Port also can be removed, using the ``delete_input_port()`` and
|
||||
``delete_output_port()`` methods.
|
||||
|
||||
The ``Port`` class is just an abstraction that works with edges incoming/outgoing to/from a specific ``Node`` instance. For
|
||||
example, output port with ``idx = 1`` corresponds to the outgoing edge of a node with an attribute ``out = 1``, the input
|
||||
port with ``idx = 2`` corresponds to the incoming edge of a node with an attribute ``in = 2``.
|
||||
|
||||
Consider the example of a graph part with 4 operation nodes "Op1", "Op2", "Op3", and "Op4" and a number of data nodes
|
||||
depicted with light green boxes.
|
||||
|
||||
.. image:: _static/images/MO_ports_example_1.svg
|
||||
:scale: 80 %
|
||||
:align: center
|
||||
|
||||
Operation nodes have input ports (yellow squares) and output ports (light purple squares). Input port may not be
|
||||
connected. For example, the input **port 2** of node **Op1** does not have incoming edge, while output port always has an
|
||||
associated data node (after the partial inference when the data nodes are added to the graph), which may have no
|
||||
consumers.
|
||||
|
||||
Ports can be used to traverse a graph. The method ``get_source()`` of an input port returns an output port producing the
|
||||
tensor consumed by the input port. It is important that the method works the same during front, middle and back phases of a
|
||||
model conversion even though the graph structure changes (there are no data nodes in the graph during the front phase).
|
||||
|
||||
Let's assume that there are 4 instances of ``Node`` object ``op1, op2, op3``, and ``op4`` corresponding to nodes **Op1**, **Op2**,
|
||||
**Op3**, and **Op4**, respectively. The result of ``op2.in_port(0).get_source()`` and ``op4.in_port(1).get_source()`` is the
|
||||
same object ``op1.out_port(1)`` of type ``Port``.
|
||||
|
||||
The method ``get_destination()`` of an output port returns the input port of the node consuming this tensor. If there are
|
||||
multiple consumers of this tensor, the error is raised. The method ``get_destinations()`` of an output port returns a
|
||||
list of input ports consuming the tensor.
|
||||
|
||||
The method ``disconnect()`` removes a node incoming edge corresponding to the specific input port. The method removes
|
||||
several edges if it is applied during the front phase for a node output port connected with multiple nodes.
|
||||
|
||||
The method ``port.connect(another_port)`` connects output port ``port`` and input port ``another_port``. The method handles
|
||||
situations when the graph contains data nodes (middle and back phases) and does not create an edge between two nodes
|
||||
but also automatically creates data node or reuses existing data node. If the method is used during the front phase and
|
||||
data nodes do not exist, the method creates edge and properly sets ``in`` and ``out`` edge attributes.
|
||||
|
||||
For example, applying the following two methods to the graph above will result in the graph depicted below:
|
||||
|
||||
.. code-block:: py
|
||||
:force:
|
||||
|
||||
op4.in_port(1).disconnect()
|
||||
op3.out_port(0).connect(op4.in_port(1))
|
||||
|
||||
.. image:: _static/images/MO_ports_example_2.svg
|
||||
:scale: 80 %
|
||||
:align: center
|
||||
|
||||
.. note::
|
||||
For a full list of available methods, refer to the ``Node`` class implementation in the ``mo/graph/graph.py`` and ``Port`` class implementation in the ``mo/graph/port.py`` files.
|
||||
|
||||
===========
|
||||
Connections
|
||||
===========
|
||||
|
||||
Connection is a concept introduced to easily and reliably perform graph modifications. Connection corresponds to a
|
||||
link between a source output port with one or more destination input ports or a link between a destination input port
|
||||
and source output port producing data. So each port is connected with one or more ports with help of a connection.
|
||||
Model Optimizer uses the ``mo.graph.connection.Connection`` class to represent a connection.
|
||||
|
||||
There is only one ``get_connection()`` method of the ``Port`` class to get the instance of the corresponding ``Connection``
|
||||
object. If the port is not connected, the returned value is ``None``.
|
||||
|
||||
For example, the ``op3.out_port(0).get_connection()`` method returns a ``Connection`` object encapsulating edges from node
|
||||
**Op3** to data node **data_3_0** and two edges from data node **data_3_0** to two ports of the node **Op4**.
|
||||
|
||||
The ``Connection`` class provides methods to get source and destination(s) ports the connection corresponds to:
|
||||
|
||||
* ``connection.get_source()`` - returns an output ``Port`` object producing the tensor.
|
||||
* ``connection.get_destinations()`` - returns a list of input ``Port`` consuming the data.
|
||||
* ``connection.get_destination()`` - returns a single input ``Port`` consuming the data. If there are multiple consumers, the exception is raised.
|
||||
|
||||
The ``Connection`` class provides methods to modify a graph by changing a source or destination(s) of a connection. For
|
||||
example, the function call ``op3.out_port(0).get_connection().set_source(op1.out_port(0))`` changes source port of edges
|
||||
consuming data from port ``op3.out_port(0)`` to ``op1.out_port(0)``. The transformed graph from the sample above is depicted
|
||||
below:
|
||||
|
||||
.. image:: _static/images/MO_connection_example_1.svg
|
||||
:scale: 80 %
|
||||
:align: center
|
||||
|
||||
Another example is the ``connection.set_destination(dest_port)`` method. It disconnects ``dest_port`` and all input ports to which
|
||||
the connection is currently connected and connects the connection source port to ``dest_port``.
|
||||
|
||||
Note that connection works seamlessly during front, middle, and back phases and hides the fact that the graph structure is
|
||||
different.
|
||||
|
||||
.. note::
|
||||
For a full list of available methods, refer to the ``Connection`` class implementation in the ``mo/graph/connection.py`` file.
|
||||
|
||||
====================
|
||||
Additional Resources
|
||||
====================
|
||||
|
||||
* :doc:`Model Optimizer Extensibility <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer>`
|
||||
* :doc:`Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions>`
|
||||
* :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>`
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,59 +0,0 @@
|
||||
# Low-Precision 8-bit Integer Inference
|
||||
|
||||
## Disclaimer
|
||||
|
||||
Low-precision 8-bit inference is optimized for:
|
||||
- Intel® architecture processors with the following instruction set architecture extensions:
|
||||
- Intel® Advanced Vector Extensions 512 Vector Neural Network Instructions (Intel® AVX-512 VNNI)
|
||||
- Intel® Advanced Vector Extensions 512 (Intel® AVX-512)
|
||||
- Intel® Advanced Vector Extensions 2.0 (Intel® AVX2)
|
||||
- Intel® Streaming SIMD Extensions 4.2 (Intel® SSE4.2)
|
||||
- Intel® processor graphics:
|
||||
- Intel® Iris® Xe Graphics
|
||||
- Intel® Iris® Xe MAX Graphics
|
||||
|
||||
## Introduction
|
||||
|
||||
For 8-bit integer computation, a model must be quantized. You can use a quantized model from [OpenVINO™ Toolkit Intel's Pre-Trained Models](@ref omz_models_group_intel) or quantize a model yourself. For more details on how to get quantized model please refer to [Model Optimization](@ref openvino_docs_model_optimization_guide) document.
|
||||
|
||||
The quantization process adds [FakeQuantize](../ops/quantization/FakeQuantize_1.md) layers on activations and weights for most layers. Read more about mathematical computations in the [Uniform Quantization with Fine-Tuning](https://github.com/openvinotoolkit/nncf/blob/develop/docs/compression_algorithms/Quantization.md).
|
||||
|
||||
When you pass the quantized IR to the OpenVINO™ plugin, the plugin automatically recognizes it as a quantized model and performs 8-bit inference. Note that if you pass a quantized model to another plugin that does not support 8-bit inference but supports all operations from the model, the model is inferred in precision that this plugin supports.
|
||||
|
||||
At runtime, the quantized model is loaded to the plugin. The plugin uses the `Low Precision Transformation` component to update the model to infer it in low precision:
|
||||
- Update `FakeQuantize` layers to have quantized output tensors in low-precision range and add dequantization layers to compensate for the update. Dequantization layers are pushed through as many layers as possible to have more layers in low precision. After that, most layers have quantized input tensors in low-precision range and can be inferred in low precision. Ideally, dequantization layers should be fused in the next `FakeQuantize` layer.
|
||||
- Weights are quantized and stored in `Constant` layers.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Let's explore quantized [TensorFlow* implementation of the ResNet-50](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/resnet-50-tf) model. Use [Model Downloader](@ref omz_tools_downloader) to download the `FP16` model from [OpenVINO™ Toolkit - Open Model Zoo repository](https://github.com/openvinotoolkit/open_model_zoo):
|
||||
|
||||
```sh
|
||||
omz_downloader --name resnet-50-tf --precisions FP16-INT8
|
||||
```
|
||||
After that you should quantize the model with the [Model Quantizer](@ref omz_tools_downloader) tool.
|
||||
```sh
|
||||
omz_quantizer --model_dir public/resnet-50-tf --dataset_dir <DATASET_DIR> --precisions=FP16-INT8
|
||||
```
|
||||
|
||||
The simplest way to infer the model and collect performance counters is the [Benchmark Application](../../samples/cpp/benchmark_app/README.md):
|
||||
```sh
|
||||
./benchmark_app -m resnet-50-tf.xml -d CPU -niter 1 -api sync -report_type average_counters -report_folder pc_report_dir
|
||||
```
|
||||
If you infer the model with the OpenVINO™ CPU plugin and collect performance counters, all operations (except the last non-quantized SoftMax) are executed in INT8 precision.
|
||||
|
||||
## Low-Precision 8-bit Integer Inference Workflow
|
||||
|
||||
For 8-bit integer computations, a model must be quantized. Quantized models can be downloaded from [Overview of OpenVINO™ Toolkit Intel's Pre-Trained Models](@ref omz_models_group_intel). If the model is not quantized, you can use the [Post-Training Optimization Tool](@ref pot_introduction) to quantize the model. The quantization process adds [FakeQuantize](../ops/quantization/FakeQuantize_1.md) layers on activations and weights for most layers. Read more about mathematical computations in the [Uniform Quantization with Fine-Tuning](https://github.com/openvinotoolkit/nncf/blob/develop/docs/compression_algorithms/Quantization.md).
|
||||
|
||||
8-bit inference pipeline includes two stages (also refer to the figure below):
|
||||
1. *Offline stage*, or *model quantization*. During this stage, [FakeQuantize](../ops/quantization/FakeQuantize_1.md) layers are added before most layers to have quantized tensors before layers in a way that low-precision accuracy drop for 8-bit integer inference satisfies the specified threshold. The output of this stage is a quantized model. Quantized model precision is not changed, quantized tensors are in the original precision range (`fp32`). `FakeQuantize` layer has `levels` attribute which defines quants count. Quants count defines precision which is used during inference. For `int8` range `levels` attribute value has to be 255 or 256. To quantize the model, you can use the [Post-Training Optimization Tool](@ref pot_introduction) delivered with the Intel® Distribution of OpenVINO™ toolkit release package.
|
||||
|
||||
When you pass the quantized IR to the OpenVINO™ plugin, the plugin automatically recognizes it as a quantized model and performs 8-bit inference. Note, if you pass a quantized model to another plugin that does not support 8-bit inference but supports all operations from the model, the model is inferred in precision that this plugin supports.
|
||||
|
||||
2. *Runtime stage*. This stage is an internal procedure of the OpenVINO™ plugin. During this stage, the quantized model is loaded to the plugin. The plugin uses `Low Precision Transformation` component to update the model to infer it in low precision:
|
||||
- Update `FakeQuantize` layers to have quantized output tensors in low precision range and add dequantization layers to compensate the update. Dequantization layers are pushed through as many layers as possible to have more layers in low precision. After that, most layers have quantized input tensors in low precision range and can be inferred in low precision. Ideally, dequantization layers should be fused in the next `FakeQuantize` layer.
|
||||
- Weights are quantized and stored in `Constant` layers.
|
||||
|
||||
![int8_flow]
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
481
docs/_static/benchmarks_files/OV-benchmark-data.csv
vendored
481
docs/_static/benchmarks_files/OV-benchmark-data.csv
vendored
@@ -1,481 +0,0 @@
|
||||
Network model,Release,IE-Type,Platform name,Throughput-INT8,ThroughputFP16,ThroughputFP32,Value,Efficiency,Price,TDP,Sockets,Price/socket,TDP/socket,Latency,UOM_T,UOM_V,UOM_E,UOM_L
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,11.35,,4.27,0.106093669,0.756801503,107,15,1,107,15,88.11,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,21.38,,15.11,0.182727309,0.328909156,117,65,1,117,65,48.47,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,32.23,,20.26,0.15061144,0.495859202,214,65,1,214,65,36.18,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,113.18,,45.08,0.344024364,0.905472125,329,125,1,329,125,17.43,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,34.34,,24.04,0.178867029,0.528345686,192,65,1,192,65,30.88,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,51.27,,18.44,0.120345681,1.830973571,426,28,1,426,28,23.31,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,37.98,,13.59,0.077518083,1.356566444,490,28,1,490,28,29.22,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,27.60,,17.56,0.091086845,0.788551831,303,35,1,303,35,42.83,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,34.12,,20.30,0.069915909,0.974827538,488,35,1,488,35,37.09,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,53.08,,19.48,0.097575059,1.516595204,544,35,1,544,35,23.07,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,163.20,,66.23,0.272459575,1.305626285,599,125,1,599,125,13.68,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,atom,Intel® Processor N-200,1.65,,0.83,0.008529061,0.274351466,193,6,1,193,6,641.46,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,51.01,,29.43,0.08587761,0.408090401,594,125,1,594,125,28.93,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,20.86,,14.80,0.068171185,0.293808206,306,71,1,306,71,49.41,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,217.83,,80.66,0.069284052,1.037281242,3144,210,2,1572,105,13.64,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,572.10,,224.73,0.033744047,1.395357512,16954,410,2,8477,205,7.81,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,872.62,,338.47,0.04661922,1.61596031,18718,540,2,9359,270,43.32,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,3255.60,,505.88,0.095752851,4.650852741,34000,700,2,17000,350,4.08,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,204.84,,76.40,0.101307066,1.024214437,2022,200,2,1011,100,14.24,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,426.78,,167.54,0.187678462,1.422602743,2274,300,2,1137,150,8.09,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,accel,Intel® Flex-170,842.00,683.21,,,,,,1,,,18.63,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,accel,Intel® Flex-140,174.28,123.71,,,,,,1,,,91.68,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,45.83,31.96,,0.428279604,3.055061174,107,15,1,107,15,87.12,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,73.09,55.44,,0.149162436,2.610342624,490,28,1,490,28,54.56,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,3.37,2.36,,0.017448724,0.561267278,193,6,1,193,6,1185.78,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,84.42,60.51,,0.198161663,3.014888156,426,28,1,426,28,46.90,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,46.67,,23.26,0.436174206,3.111376,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,73.20,,31.70,0.149385536,2.614246884,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,4.43,,2.03,0.022934748,0.7377344,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-base-cased,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,83.69,,37.23,0.196445915,2.988784286,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,1.18,,0.38,0.011017319,0.078590206,107,15,1,107,15,863.34,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,2.09,,1.33,0.017880344,0.032184618,117,65,1,117,65,492.10,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,2.97,,1.87,0.013882493,0.045705439,214,65,1,214,65,347.78,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,9.93,,3.74,0.030176091,0.079423471,329,125,1,329,125,155.72,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,3.36,,2.13,0.017518449,0.051746803,192,65,1,192,65,302.24,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,5.09,,1.63,0.011951214,0.181829179,426,28,1,426,28,219.77,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,3.79,,1.22,0.007726669,0.135216715,490,28,1,490,28,266.14,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,2.71,,1.61,0.008936965,0.077368581,303,35,1,303,35,412.44,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,3.35,,1.83,0.006861724,0.095672042,488,35,1,488,35,327.59,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,5.06,,1.75,0.009296462,0.144493584,544,35,1,544,35,210.96,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,15.19,,5.91,0.025358635,0.12151858,599,125,1,599,125,113.61,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,atom,Intel® Processor N-200,0.16,,0.08,0.000828224,0.0266412,193,6,1,193,6,6367.32,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,4.66,,2.88,0.007842661,0.037268324,594,125,1,594,125,224.55,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,2.11,,1.34,0.006898006,0.029729433,306,71,1,306,71,486.76,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,21.27,,6.90,0.006764356,0.101272067,3144,210,2,1572,105,103.38,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,50.91,,17.71,0.003002727,0.124166415,16954,410,2,8477,205,63.45,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,67.03,,27.69,0.003581195,0.124134843,18718,540,2,9359,270,253.77,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,251.10,,47.69,0.007385431,0.358720946,34000,700,2,17000,350,36.69,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,20.81,,6.64,0.010291168,0.104043704,2022,200,2,1011,100,106.83,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,38.76,,14.75,0.017046987,0.129216158,2274,300,2,1137,150,237.83,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,accel,Intel® Flex-170,144.12,101.13,,,,,,1,,,110.90,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,accel,Intel® Flex-140,29.97,20.57,,,,,,1,,,534.35,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,4.66,3.35,,0.043581125,0.31087869,107,15,1,107,15,820.82,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,5.11,5.77,,0.010428379,0.182496635,490,28,1,490,28,745.40,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,0.34,0.23,,0.00174067,0.055991537,193,6,1,193,6,11899.92,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,9.13,6.65,,0.021425568,0.325974707,426,28,1,426,28,449.68,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,5.20,,2.33,0.048610495,0.346754867,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,3.87,,2.23,0.007899318,0.138238071,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,0.44,,0.17,0.002288653,0.073618327,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
bert-large-uncased-whole-word-masking-squad-0001,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,8.63,,3.52,0.02025661,0.308189857,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,11.86,,4.61,0.11084032,0.79066095,107,15,1,107,15,85.88,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,22.85,,14.48,0.195256904,0.351462427,117,65,1,117,65,43.93,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,34.47,,16.42,0.161068212,0.530286114,214,65,1,214,65,33.07,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,94.13,,42.32,0.286105004,0.753028371,329,125,1,329,125,16.23,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,37.18,,21.16,0.193650962,0.572015148,192,65,1,192,65,27.36,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,52.88,,16.51,0.124135164,1.888627857,426,28,1,426,28,19.87,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,30.78,,9.65,0.062807791,1.099136335,490,28,1,490,28,31.13,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,32.02,,18.34,0.105688204,0.914957883,303,35,1,303,35,37.47,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,40.36,,18.54,0.082712269,1.153245355,488,35,1,488,35,27.15,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,57.69,,22.51,0.106053446,1.648373567,544,35,1,544,35,21.75,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,148.87,,57.81,0.248526818,1.190940511,599,125,1,599,125,12.44,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,atom,Intel® Processor N-200,1.72,,1.01,0.008897382,0.286199128,193,6,1,193,6,595.26,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,51.51,,19.39,0.086713894,0.412064422,594,125,1,594,125,21.10,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,22.69,,15.40,0.074145796,0.319557937,306,71,1,306,71,43.78,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,190.40,,77.08,0.060561308,0.906689304,3144,210,2,1572,105,11.76,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,416.77,,155.13,0.024582207,1.016504228,16954,410,2,8477,205,5.66,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,584.92,,227.30,0.031248866,1.083178298,18718,540,2,9359,270,3.70,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,999.22,,380.82,0.029388758,1.427453957,34000,700,2,17000,350,3.55,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,184.31,,74.61,0.091151132,0.921537946,2022,200,2,1011,100,12.07,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,370.93,,139.96,0.163117657,1.236431838,2274,300,2,1137,150,6.87,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,accel,Intel® Flex-170,803.58,560.76,,,,,,1,,,19.59,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,accel,Intel® Flex-140,148.01,97.06,,,,,,1,,,108.12,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,60.17,27.60,,0.562349486,4.011426332,107,15,1,107,15,66.33,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,76.40,36.69,,0.155928067,2.728741167,490,28,1,490,28,51.90,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,3.65,1.92,,0.018917206,0.608503456,193,6,1,193,6,1094.30,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,105.14,48.76,,0.24680943,3.755029182,426,28,1,426,28,37.64,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,61.90,,17.22,0.578511308,4.126714,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,49.44,,9.02,0.100894422,1.765652381,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,4.81,,2.03,0.024920889,0.801621937,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
deeplabv3,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,89.16,,24.78,0.209304953,3.184425357,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,272.36,,133.20,2.545454771,18.15757736,107,15,1,107,15,3.60,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,542.97,,451.26,4.640733479,8.353320262,117,65,1,117,65,1.99,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,899.54,,499.68,4.203451742,13.8390565,214,65,1,214,65,1.58,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,2804.17,,1285.76,8.523326054,22.43339417,329,125,1,329,125,0.88,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,868.27,,679.32,4.522249945,13.35803061,192,65,1,192,65,1.35,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,1372.54,,531.48,3.221931925,49.01939286,426,28,1,426,28,0.96,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,990.18,,318.31,2.020773404,35.36353457,490,28,1,490,28,1.18,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,741.91,,511.96,2.448553162,21.19747452,303,35,1,303,35,1.84,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,960.08,,614.86,1.967381666,27.43092151,488,35,1,488,35,1.49,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,1296.04,,651.56,2.382432184,37.02980308,544,35,1,544,35,1.31,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,4078.62,,2016.89,6.809056345,32.628998,599,125,1,599,125,0.73,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,atom,Intel® Processor N-200,39.61,,29.85,0.205210747,6.600945698,193,6,1,193,6,26.82,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,1458.83,,554.06,2.455950239,11.67067553,594,125,1,594,125,1.29,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,527.91,,453.23,1.725211318,7.435417792,306,71,1,306,71,2.04,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,5479.84,,1921.88,1.742952604,26.09449042,3144,210,2,1572,105,1.43,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,14421.48,,4410.27,0.850624065,35.17434244,16954,410,2,8477,205,0.92,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,22622.04,,6912.71,1.208571487,41.89266868,18718,540,2,9359,270,0.56,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,38771.76,,10993.76,1.140345798,55.3882245,34000,700,2,17000,350,0.66,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,5229.87,,1856.59,2.586481754,26.14933053,2022,200,2,1011,100,1.44,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,12359.26,,3615.96,5.435030176,41.19752874,2274,300,2,1137,150,0.55,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,accel,Intel® Flex-170,7195.50,6410.60,,,,,,1,,,1.97,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,accel,Intel® Flex-140,1219.84,1149.89,,,,,,1,,,13.07,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,692.73,509.86,,6.474119544,46.18205274,107,15,1,107,15,5.58,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,903.44,556.69,,1.84375582,32.26572686,490,28,1,490,28,4.30,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,57.93,40.13,,0.300129792,9.65417499,193,6,1,193,6,68.05,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,1008.77,740.13,,2.36801077,36.02759243,426,28,1,426,28,3.82,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,514.94,,313.82,4.812519626,34.32930667,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,1114.75,,268.28,2.275002757,39.81254825,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,73.89,,44.62,0.38286464,12.31547925,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
mobilenet-v2,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,1497.43,,605.84,3.515084507,53.4795,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,49.96,,14.45,0.466891776,3.330494671,107,15,1,107,15,19.80,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,97.49,,51.23,0.833227829,1.499810092,117,65,1,117,65,10.67,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,145.23,,74.40,0.678644387,2.234306135,214,65,1,214,65,8.18,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,515.94,,140.29,1.568210731,4.127530643,329,125,1,329,125,3.87,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,158.18,,82.33,0.823856129,2.433544259,192,65,1,192,65,7.04,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,229.98,,61.97,0.539855399,8.213514286,426,28,1,426,28,5.09,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,173.03,,44.88,0.353117963,6.179564359,490,28,1,490,28,6.59,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,122.85,,61.90,0.405448145,3.510022512,303,35,1,303,35,9.95,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,158.96,,76.32,0.325734087,4.541663835,488,35,1,488,35,7.54,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,270.04,,72.19,0.496399722,7.715469968,544,35,1,544,35,4.89,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,749.50,,228.07,1.251250835,5.995994004,599,125,1,599,125,2.93,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,atom,Intel® Processor N-200,6.55,,3.16,0.03395277,1.092147419,193,6,1,193,6,159.41,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,242.15,,98.01,0.407662044,1.937210033,594,125,1,594,125,5.41,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,93.12,,50.42,0.30430895,1.311528714,306,71,1,306,71,11.07,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,967.51,,269.32,0.307731475,4.607179803,3144,210,2,1572,105,2.90,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,2904.14,,747.72,0.171295011,7.083257598,16954,410,2,8477,205,1.53,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,4995.38,,1161.61,0.266875909,9.250709751,18718,540,2,9359,270,1.02,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,20106.68,,1683.03,0.591372933,28.72382815,34000,700,2,17000,350,1.01,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,930.86,,255.73,0.46036761,4.654316532,2022,200,2,1011,100,3.01,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,2277.89,,566.74,1.001712531,7.592980986,2274,300,2,1137,150,1.47,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,accel,Intel® Flex-170,3587.03,2207.96,,,,,,1,,,4.17,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,accel,Intel® Flex-140,681.39,441.41,,,,,,1,,,23.43,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,211.61,117.01,,1.977639185,14.10715952,107,15,1,107,15,18.79,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,289.48,170.46,,0.590782847,10.33869983,490,28,1,490,28,13.64,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,14.62,7.80,,0.075769949,2.437266688,193,6,1,193,6,272.49,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,352.09,211.39,,0.826510493,12.57476679,426,28,1,426,28,11.09,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,201.96,,71.44,1.887469159,13.46394667,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,307.08,,88.49,0.626686058,10.96700601,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,18.58,,6.49,0.09624999,3.096041335,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
resnet-50,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,358.14,,114.23,0.840715023,12.79087857,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,107.63,,36.80,1.005906996,7.175469906,107,15,1,107,15,9.12,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,212.15,,122.46,1.813284395,3.263911911,117,65,1,117,65,4.93,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,327.95,,171.39,1.532485774,5.045414702,214,65,1,214,65,3.61,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,999.78,,361.81,3.038835794,7.99821581,329,125,1,329,125,1.90,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,343.23,,200.57,1.787633018,5.280392915,192,65,1,192,65,3.11,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,518.48,,150.36,1.217089202,18.51714286,426,28,1,426,28,2.24,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,387.68,,101.48,0.791191606,13.8458531,490,28,1,490,28,2.80,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,275.38,,157.24,0.908858835,7.868120772,303,35,1,303,35,4.33,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,367.82,,194.43,0.753734827,10.50921702,488,35,1,488,35,3.35,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,543.47,,186.05,0.999034589,15.5278519,544,35,1,544,35,2.61,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,1525.02,,586.71,2.545949853,12.20019169,599,125,1,599,125,1.62,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,atom,Intel® Processor N-200,14.49,,7.97,0.075060228,2.414437321,193,6,1,193,6,71.99,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,577.55,,223.76,0.972304716,4.620392012,594,125,1,594,125,2.38,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,203.21,,126.30,0.664084594,2.862111065,306,71,1,306,71,5.09,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,2048.96,,639.54,0.651703831,9.756937353,3144,210,2,1572,105,1.57,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,5725.24,,1655.76,0.337692546,13.96399861,16954,410,2,8477,205,1.11,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,10274.06,,2354.69,0.548886883,19.0260457,18718,540,2,9359,270,0.67,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,22569.91,,3519.34,0.663820955,32.24273208,34000,700,2,17000,350,0.82,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,1946.94,,612.87,0.962878848,9.73470515,2022,200,2,1011,100,1.63,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,4808.85,,1247.67,2.114709828,16.02950049,2274,300,2,1137,150,0.81,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,accel,Intel® Flex-170,4012.21,3280.14,,,,,,1,,,3.65,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,accel,Intel® Flex-140,837.59,673.84,,,,,,1,,,19.02,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,408.97,220.07,,3.822128486,27.26451654,107,15,1,107,15,9.63,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,522.64,285.29,,1.066608011,18.6656402,490,28,1,490,28,7.49,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,28.92,15.36,,0.149828275,4.819476185,193,6,1,193,6,136.60,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,637.62,384.26,,1.496766725,22.77223659,426,28,1,426,28,6.11,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,321.29,,138.22,3.002740187,21.41954667,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,531.28,,141.48,1.084245141,18.97428996,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,35.69,,14.88,0.184945841,5.949091211,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd_mobilenet_v1_coco,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,690.18,,239.85,1.620143192,24.64932143,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,0.89,,0.23,0.00834996,0.059563049,107,15,1,107,15,1119.27,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,1.68,,0.97,0.014338412,0.025809141,117,65,1,117,65,596.89,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,2.42,,1.40,0.011301245,0.037207176,214,65,1,214,65,459.48,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,8.23,,2.40,0.025006186,0.065816281,329,125,1,329,125,163.47,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,2.78,,1.56,0.014501179,0.042834252,192,65,1,192,65,362.12,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,3.93,,1.00,0.009217819,0.140242536,426,28,1,426,28,278.25,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,2.96,,0.76,0.006043555,0.105762215,490,28,1,490,28,336.81,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,2.02,,1.13,0.006664408,0.057694728,303,35,1,303,35,563.91,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,2.68,,1.49,0.00548551,0.076483685,488,35,1,488,35,405.46,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,4.40,,1.32,0.008086729,0.125690868,544,35,1,544,35,235.75,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,12.52,,4.02,0.020905788,0.100180536,599,125,1,599,125,125.64,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,atom,Intel® Processor N-200,0.11,,0.05,0.000581374,0.01870087,193,6,1,193,6,8951.48,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,4.33,,2.45,0.007285664,0.034621476,594,125,1,594,125,239.93,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,1.60,,0.92,0.005224348,0.022516206,306,71,1,306,71,625.20,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,17.63,,4.57,0.005609079,0.083975927,3144,210,2,1572,105,115.76,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,57.85,,14.82,0.003412426,0.141107992,16954,410,2,8477,205,36.60,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,79.09,,20.81,0.004225558,0.146470375,18718,540,2,9359,270,106.87,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,445.98,,31.40,0.013117158,0.637119123,34000,700,2,17000,350,8.59,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,16.77,,4.34,0.008295831,0.083870853,2022,200,2,1011,100,121.62,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,42.59,,10.54,0.018728616,0.141962906,2274,300,2,1137,150,59.65,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,accel,Intel® Flex-170,167.49,103.03,,,,,,1,,,95.09,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,accel,Intel® Flex-140,29.99,17.56,,,,,,1,,,529.50,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,5.05,2.63,,0.047178932,0.336543045,107,15,1,107,15,773.01,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,8.98,4.71,,0.018327459,0.320730535,490,28,1,490,28,445.01,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,0.29,0.16,,0.001497632,0.048173819,193,6,1,193,6,13818.30,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,9.70,5.44,,0.022760985,0.34629213,426,28,1,426,28,422.10,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,0.90,,0.23,0.00837685,0.059754867,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,2.91,,0.75,0.005937663,0.103909111,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,0.11,,0.05,0.000582108,0.01872448,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
ssd-resnet34-1200,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,3.92,,1.00,0.00919669,0.139921071,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,5.46,,1.54,0.051044248,0.364115633,107,15,1,107,15,183.90,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,10.65,,5.82,0.09106238,0.163912284,117,65,1,117,65,94.90,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,15.38,,8.31,0.071851432,0.236557023,214,65,1,214,65,74.19,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,51.71,,15.62,0.157162207,0.41365093,329,125,1,329,125,29.85,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,17.56,,9.38,0.091438134,0.270094181,192,65,1,192,65,57.84,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,24.16,,6.62,0.056714953,0.8628775,426,28,1,426,28,45.99,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,18.06,,4.86,0.03686323,0.645106519,490,28,1,490,28,57.19,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,12.66,,6.85,0.041784766,0.361736687,303,35,1,303,35,86.80,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,16.86,,8.71,0.034540452,0.48159259,488,35,1,488,35,65.99,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,27.01,,8.10,0.049658249,0.771831063,544,35,1,544,35,42.00,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,78.04,,25.56,0.1302838,0.62431997,599,125,1,599,125,23.30,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,atom,Intel® Processor N-200,0.70,,0.35,0.003642344,0.117162061,193,6,1,193,6,1468.27,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,27.34,,14.09,0.046032451,0.218746209,594,125,1,594,125,40.58,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,10.07,,5.66,0.032912167,0.141846806,306,71,1,306,71,100.10,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,106.30,,29.82,0.033811441,0.506205571,3144,210,2,1572,105,21.86,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,313.22,,88.20,0.018474663,0.76394984,16954,410,2,8477,205,10.58,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,493.02,,109.11,0.026339551,0.913006894,18718,540,2,9359,270,18.51,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,2136.92,,194.88,0.06285072,3.052749275,34000,700,2,17000,350,3.29,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,101.27,,28.40,0.050083923,0.50634846,2022,200,2,1011,100,22.87,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,242.00,,62.34,0.106421602,0.806675746,2274,300,2,1137,150,13.70,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,accel,Intel® Flex-170,789.11,338.45,,,,,,1,,,19.85,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,accel,Intel® Flex-140,159.67,87.28,,,,,,1,,,99.99,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,31.90,15.02,,0.298118652,2.126579715,107,15,1,107,15,123.93,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,57.77,25.96,,0.117907546,2.063382053,490,28,1,490,28,68.96,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,1.76,0.94,,0.009116198,0.293237699,193,6,1,193,6,2271.06,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,63.86,29.69,,0.149904983,2.280697234,426,28,1,426,28,63.56,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,34.09,,9.18,0.318603364,2.272704,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,55.18,,12.97,0.112605748,1.970600588,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,2.22,,0.74,0.011488536,0.369547916,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,52.21,,13.99,0.122567488,1.864776786,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,54.42,,18.04,0.508553978,3.627685044,107,15,1,107,15,18.25,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,112.01,,63.79,0.957390784,1.723303411,117,65,1,117,65,9.02,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,167.15,,91.46,0.781091755,2.571594392,214,65,1,214,65,6.72,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,599.98,,196.78,1.823638134,4.799815567,329,125,1,329,125,3.05,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,185.17,,102.47,0.964441757,2.848812574,192,65,1,192,65,5.42,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,251.02,,77.47,0.589250939,8.965032143,426,28,1,426,28,4.54,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,186.99,,55.22,0.381609578,6.678167613,490,28,1,490,28,5.74,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,137.72,,76.53,0.454530194,3.934932821,303,35,1,303,35,8.20,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,186.09,,96.75,0.381340728,5.316979292,488,35,1,488,35,6.26,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,290.20,,92.52,0.533462621,8.291533312,544,35,1,544,35,4.20,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,858.94,,286.41,1.433957861,6.871526071,599,125,1,599,125,2.44,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,atom,Intel® Processor N-200,7.65,,4.05,0.039622221,1.27451476,193,6,1,193,6,136.49,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,298.60,,148.94,0.502696157,2.388812138,594,125,1,594,125,3.99,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,106.58,,62.62,0.348291454,1.501087112,306,71,1,306,71,9.44,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,1051.30,,339.08,0.334382549,5.006184448,3144,210,2,1572,105,2.51,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,2824.66,,923.96,0.166607362,6.889417597,16954,410,2,8477,205,1.22,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,4664.34,,1378.51,0.249189958,8.637662274,18718,540,2,9359,270,0.87,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,13094.97,,2140.00,0.385146034,18.70709309,34000,700,2,17000,350,1.09,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,1008.44,,322.64,0.49873439,5.042204682,2022,200,2,1011,100,2.62,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,2217.58,,702.90,0.975190642,7.391945065,2274,300,2,1137,150,1.33,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,accel,Intel® Flex-170,3731.30,2395.93,,,,,,1,,,4.06,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,accel,Intel® Flex-140,595.41,589.87,,,,,,1,,,26.79,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,289.69,151.78,,2.707403451,19.31281129,107,15,1,107,15,13.67,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,482.61,255.46,,0.984928525,17.23624918,490,28,1,490,28,8.06,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,18.65,9.81,,0.096624282,3.108081056,193,6,1,193,6,212.84,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,555.59,293.27,,1.304201059,19.84248754,426,28,1,426,28,6.92,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,266.57,,93.47,2.491299065,17.77126667,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,383.36,,116.03,0.782374111,13.69154694,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,23.03,,8.30,0.119308014,3.837741122,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo-v3-tiny,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,444.34,,149.05,1.043043427,15.86916071,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,1.49,,0.38,0.013950494,0.099513526,107,15,1,107,15,672.25,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,2.43,,1.57,0.020775748,0.037396346,117,65,1,117,65,425.88,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,3.62,,2.29,0.016924989,0.055722272,214,65,1,214,65,322.49,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,11.46,,3.96,0.03483307,0.091680639,329,125,1,329,125,121.88,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,3.95,,2.54,0.020576722,0.06078047,192,65,1,192,65,262.38,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,6.56,,1.65,0.015387439,0.234108893,426,28,1,426,28,169.32,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,4.93,,1.23,0.010063508,0.176111389,490,28,1,490,28,209.95,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,3.02,,1.85,0.009976084,0.086364383,303,35,1,303,35,386.94,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,3.86,,2.43,0.007900388,0.110153975,488,35,1,488,35,282.08,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,6.32,,2.19,0.01162052,0.18061608,544,35,1,544,35,169.49,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,18.02,,6.59,0.030079429,0.144140625,599,125,1,599,125,91.92,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,atom,Intel® Processor N-200,0.17,,0.09,0.000895225,0.0287964,193,6,1,193,6,5824.42,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,6.10,,3.95,0.010266964,0.048788613,594,125,1,594,125,180.82,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,2.33,,1.48,0.007623167,0.032854777,306,71,1,306,71,431.48,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,29.17,,7.32,0.009277061,0.138890851,3144,210,2,1572,105,70.99,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,95.18,,21.75,0.005614225,0.232155061,16954,410,2,8477,205,23.58,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,129.66,,31.77,0.006926924,0.240107724,18718,540,2,9359,270,73.18,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,597.42,,48.08,0.017571322,0.853464211,34000,700,2,17000,350,9.00,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,27.77,,6.96,0.01373266,0.138837194,2022,200,2,1011,100,74.54,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,68.21,,15.93,0.029995749,0.227367774,2274,300,2,1137,150,43.86,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,accel,Intel® Flex-170,277.97,158.53,,,,,,1,,,57.27,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,accel,Intel® Flex-140,46.10,28.49,,,,,,1,,,346.80,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,8.40,4.35,,0.078545387,0.56029043,107,15,1,107,15,475.75,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,15.51,7.81,,0.03164744,0.553830203,490,28,1,490,28,257.89,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,0.46,0.25,,0.002385152,0.076722378,193,6,1,193,6,8685.75,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,17.28,8.86,,0.04056698,0.617197621,426,28,1,426,28,227.89,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,8.96,,2.57,0.083779393,0.597626333,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,15.42,,3.90,0.031467977,0.550689601,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,0.55,,0.19,0.002833692,0.09115042,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
unet-camvid-onnx-0001,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,14.32,,3.81,0.033621549,0.511527857,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,24.40,,9.61,0.22800938,1.626466914,107,15,1,107,15,40.45,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,53.51,,33.07,0.457363269,0.823253884,117,65,1,117,65,19.20,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,81.91,,47.09,0.382748211,1.260124878,214,65,1,214,65,13.68,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,248.13,,95.51,0.754209583,1.985079623,329,125,1,329,125,6.70,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,86.77,,53.00,0.451947196,1.334982486,192,65,1,192,65,11.88,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,110.84,,40.77,0.260193662,3.958660714,426,28,1,426,28,10.71,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,76.53,,27.31,0.156180065,2.733151145,490,28,1,490,28,13.42,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,71.40,,42.60,0.235643867,2.040002619,303,35,1,303,35,16.51,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,93.44,,53.42,0.19148001,2.669778431,488,35,1,488,35,12.45,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,129.22,,50.19,0.237534522,3.691965149,544,35,1,544,35,9.42,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,374.34,,153.46,0.624943307,2.994728327,599,125,1,599,125,5.32,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,atom,Intel® Processor N-200,3.26,,1.95,0.016869276,0.542628378,193,6,1,193,6,316.56,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,136.37,,72.87,0.229579691,1.090962692,594,125,1,594,125,9.15,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,52.29,,32.98,0.170869765,0.73642462,306,71,1,306,71,19.47,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,452.92,,175.37,0.144058565,2.156762523,3144,210,2,1572,105,5.85,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,978.34,,454.72,0.057705352,2.386186661,16954,410,2,8477,205,3.51,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,1708.13,,573.45,0.091255994,3.163203145,18718,540,2,9359,270,2.38,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,2882.62,,945.60,0.084783045,4.118033592,34000,700,2,17000,350,3.82,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,431.62,,166.10,0.213460485,2.158085503,2022,200,2,1011,100,6.19,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,855.04,,342.65,0.376007503,2.850136872,2274,300,2,1137,150,3.25,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,accel,Intel® Flex-170,1445.14,1480.07,,,,,,1,,,10.71,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,accel,Intel® Flex-140,201.93,259.00,,,,,,1,,,79.17,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,126.14,82.58,,1.178855159,8.409166799,107,15,1,107,15,31.55,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,170.37,110.99,,0.347683792,6.084466364,490,28,1,490,28,23.22,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,8.61,5.66,,0.044636,1.435791346,193,6,1,193,6,463.22,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,210.16,143.23,,0.493335138,7.505741748,426,28,1,426,28,18.84,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,116.50,,51.35,1.088790654,7.766706667,107,15,1,107,15,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,114.23,,46.77,0.233123263,4.079657102,490,28,1,490,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,10.54,,4.68,0.05458634,1.755860615,193,6,1,193,6,,FPS,FPS/$,FPS/TDP,msec.
|
||||
yolo_v8n,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,181.83,,76.10,0.426834977,6.493989286,426,28,1,426,28,,FPS,FPS/$,FPS/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,,,,0,0,117,65,1,117,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,,,,0,0,214,65,1,214,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,,,,0,0,329,125,1,329,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,,,,0,0,192,65,1,192,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,,,,0,0,303,35,1,303,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,,,,0,0,488,35,1,488,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,,,,0,0,544,35,1,544,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,32.34,,49.17,0.053990134,0.25872072,599,125,1,599,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,atom,Intel® Processor N-200,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,,,,0,0,594,125,1,594,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,,,,0,0,306,71,1,306,71,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,,,,0,0,3144,210,2,1572,105,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,,,,0,0,16954,410,2,8477,205,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,28.29,,43.45,0.001511565,0.052395333,18718,540,2,9359,270,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,47.21,,52.77,0.00138849,0.067440929,34000,700,2,17000,350,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,,,,0,0,2022,200,2,1011,100,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,40.07,,42.88,0.017620783,0.133565533,2274,300,2,1137,150,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,accel,Intel® Flex-170,81.64,,82.81,,,,,1,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,accel,Intel® Flex-140,70.36,,65.11,,,,,1,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
bloomz-560m,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,,,,0,0,117,65,1,117,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,,,,0,0,214,65,1,214,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,,,,0,0,329,125,1,329,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,,,,0,0,192,65,1,192,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,,,,0,0,303,35,1,303,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,,,,0,0,488,35,1,488,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,,,,0,0,544,35,1,544,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,242.95,,457.83,0.405588331,1.94357928,599,125,1,599,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,atom,Intel® Processor N-200,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,,,,0,0,594,125,1,594,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,,,,0,0,306,71,1,306,71,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,,,,0,0,3144,210,2,1572,105,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,,,,0,0,16954,410,2,8477,205,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,110.25,,200.49,0.005889907,0.204161611,18718,540,2,9359,270,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,119.09,,131.63,0.003502792,0.170135629,34000,700,2,17000,350,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,,,,0,0,2022,200,2,1011,100,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,277.75,,278.22,0.122140598,0.925825733,2274,300,2,1137,150,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,accel,Intel® Flex-170,143.21,,143.00,,,,,1,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,accel,Intel® Flex-140,,,,,,,,1,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
GPT-j-6b,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,,,,0,0,117,65,1,117,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,,,,0,0,214,65,1,214,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,,,,0,0,329,125,1,329,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,,,,0,0,192,65,1,192,65,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,,,,0,0,303,35,1,303,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,,,,0,0,488,35,1,488,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,,,,0,0,544,35,1,544,35,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,285.08,,511.77,0.475930451,2.28065872,599,125,1,599,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,atom,Intel® Processor N-200,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,,,,0,0,594,125,1,594,125,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,,,,0,0,306,71,1,306,71,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,,,,0,0,3144,210,2,1572,105,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,,,,0,0,16954,410,2,8477,205,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,95.08,,182.22,0.005079793,0.176080667,18718,540,2,9359,270,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,119.29,,133.20,0.003508666,0.170420929,34000,700,2,17000,350,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,,,,0,0,2022,200,2,1011,100,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,338.67,,345.26,0.148931821,1.1289032,2274,300,2,1137,150,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,accel,Intel® Flex-170,138.06,,137.36,,,,,1,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,accel,Intel® Flex-140,,,,,,,,1,,,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,,,,0,0,107,15,1,107,15,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,,,,0,0,490,28,1,490,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,,,,0,0,193,6,1,193,6,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
llama-2-7b-chat,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,,,,0,0,426,28,1,426,28,,msec/token,msec/token/$,msec/token/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
begin_rec,,,,,,,,,,,,,,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,atom,Intel® Celeron™ 6305E CPU-only,,,,0,0,107,15,1,107,15,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i3-8100 CPU-only,,,,0,0,117,65,1,117,65,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i5-10500TE CPU-only,,,,0,0,214,65,1,214,65,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i5-13600K CPU-only,,,,0,0,329,125,1,329,125,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i5-8500 CPU-only,,,,0,0,192,65,1,192,65,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i7-1185G7 CPU-only,,,,0,0,426,28,1,426,28,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i7-1185GRE CPU-only,,,,0,0,490,28,1,490,28,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i7-8700T CPU-only,,,,0,0,303,35,1,303,35,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i9-10900TE CPU-only,,,,0,0,488,35,1,488,35,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i9-12900TE CPU-only,,,,0,0,544,35,1,544,35,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core,Intel® Core™ i9-13900K CPU-only,43.21,,43.13,0.072129599,0.34564504,599,125,1,599,125,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,atom,Intel® Processor N-200,,,,0,0,193,6,1,193,6,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,xeon,Intel® Xeon® W1290P CPU-only,,,,0,0,594,125,1,594,125,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,xeon,Intel® Xeon® E-2124G CPU-only,,,,0,0,306,71,1,306,71,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,xeon,Intel® Xeon® Gold 5218T CPU-only,,,,0,0,3144,210,2,1572,105,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,xeon,Intel® Xeon® Platinum 8270 CPU-only,,,,0,0,16954,410,2,8477,205,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,xeon,Intel® Xeon® Platinum 8380 CPU-only,18.95,,19.43,0.001012236,0.035087093,18718,540,2,9359,270,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,xeon,Intel® Xeon® Platinum 8490H CPU-only,5.88,,6.47,0.000172889,0.008397471,34000,700,2,17000,350,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,xeon,Intel® Xeon® Silver 4216R CPU-only,,,,0,0,2022,200,2,1011,100,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,xeon,Intel® Xeon® Silver 4316 CPU-only,21.92,,22.42,0.00963796,0.073055733,2274,300,2,1137,150,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,accel,Intel® Flex-170,4.29,,4.31,,,,,1,,,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,accel,Intel® Flex-140,18.68,,18.46,,,,,1,,,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core-iGPU,Intel® Celeron™ 6305E iGPU-only,,,,0,0,107,15,1,107,15,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core-iGPU,Intel® Core™ i7-1185GRE iGPU-only,,,,0,0,490,28,1,490,28,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core-iGPU,Intel® Processor N200 iGPU-only,,,,0,0,193,6,1,193,6,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core-iGPU,Intel® Core™ i7-1185G7 iGPU-only,,,,0,0,426,28,1,426,28,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core-CPU+iGPU,Intel® Celeron™ 6305E CPU+iGPU,,,,0,0,107,15,1,107,15,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185GRE CPU+iGPU,,,,0,0,490,28,1,490,28,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core-CPU+iGPU,Intel® Processor N200 CPU+iGPU,,,,0,0,193,6,1,193,6,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
stable diffusion V2,OV-2023.1,core-CPU+iGPU,Intel® Core™ i7-1185G7 CPU+iGPU,,,,0,0,426,28,1,426,28,,"Generation time, sec.",Generation-time/$,Generation-time/TDP,msec.
|
||||
end_rec,,,,,,,,,,,,,,,,,,
|
||||
|
3
docs/_static/images/ov_homepage_diagram.png
vendored
3
docs/_static/images/ov_homepage_diagram.png
vendored
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e0791abad48ec62d3ebcd111cf42139abe4bfb809c84882c0e8aa88ff7b430b7
|
||||
size 85563
|
||||
File diff suppressed because one or more lines are too long
@@ -1,6 +1,8 @@
|
||||
# Legal Information {#openvino_docs_Legal_Information}
|
||||
.. {#openvino_docs_Legal_Information}
|
||||
|
||||
Legal Information
|
||||
=================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Learn about legal information and policies related to the use
|
||||
@@ -29,6 +31,5 @@ The OpenVINO logo must be used in connection with truthful, non-misleading refer
|
||||
Modification of the logo or use of any separate element(s) of the logo alone is not allowed.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
# About OpenVINO {#about_openvino}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:hidden:
|
||||
|
||||
openvino_docs_performance_benchmarks
|
||||
compatibility_and_support
|
||||
Release Notes <https://www.intel.com/content/www/us/en/developer/articles/release-notes/openvino/2023-1.html>
|
||||
prerelease_information
|
||||
system_requirements
|
||||
Additional Resources <resources>
|
||||
|
||||
OpenVINO is a toolkit for simple and efficient deployment of various deep learning models.
|
||||
In this section you will find information on the product itself, as well as the software
|
||||
and hardware solutions it supports.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
77
docs/articles_en/about_openvino.rst
Normal file
77
docs/articles_en/about_openvino.rst
Normal file
@@ -0,0 +1,77 @@
|
||||
.. {#about_openvino}
|
||||
|
||||
About OpenVINO
|
||||
==============
|
||||
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
:hidden:
|
||||
|
||||
openvino_docs_performance_benchmarks
|
||||
compatibility_and_support
|
||||
system_requirements
|
||||
Release Notes <openvino_release_notes>
|
||||
Additional Resources <resources>
|
||||
|
||||
OpenVINO is a toolkit for simple and efficient deployment of various deep learning models.
|
||||
In this section you will find information on the product itself, as well as the software
|
||||
and hardware solutions it supports.
|
||||
|
||||
OpenVINO (Open Visual Inference and Neural network Optimization) is an open-source software toolkit designed to optimize, accelerate, and deploy deep learning models for user applications. OpenVINO was developed by Intel to work efficiently on a wide range of Intel hardware platforms, including CPUs (x86 and Arm), GPUs, and NPUs.
|
||||
|
||||
|
||||
Features
|
||||
##############################################################
|
||||
|
||||
One of the main purposes of OpenVINO is to streamline the deployment of deep learning models in user applications. It optimizes and accelerates model inference, which is crucial for such domains as Generative AI, Large Language models, and use cases like object detection, classification, segmentation, and many others.
|
||||
|
||||
* :doc:`Model Optimization <openvino_docs_model_optimization_guide>`
|
||||
|
||||
OpenVINO provides multiple optimization methods for both the training and post-training stages, including weight compression for Large Language models and Intel Optimum integration with Hugging Face.
|
||||
|
||||
* :doc:`Model Conversion and Framework Compatibility <openvino_docs_model_processing_introduction>`
|
||||
|
||||
Supported models can be loaded directly or converted to the OpenVINO format to achieve better performance. Supported frameworks include ONNX, PyTorch, TensorFlow, TensorFlow Lite, Keras, and PaddlePaddle.
|
||||
|
||||
* :doc:`Model Inference <openvino_docs_OV_UG_OV_Runtime_User_Guide>`
|
||||
|
||||
OpenVINO accelerates deep learning models on various hardware platforms, ensuring real-time, efficient inference.
|
||||
|
||||
* `Deployment on a server <https://github.com/openvinotoolkit/model_server>`__
|
||||
|
||||
A model can be deployed either locally using OpenVINO Runtime or on a model server. Runtime is a set of C++ libraries with C and Python bindings providing a common API to deliver inference solutions. The model server enables quick model inference using external resources.
|
||||
|
||||
Architecture
|
||||
##############################################################
|
||||
|
||||
To learn more about how OpenVINO works, read the Developer documentation on its `architecture <https://github.com/openvinotoolkit/openvino/blob/master/src/docs/architecture.md>`__ and `core components <https://github.com/openvinotoolkit/openvino/blob/master/src/README.md>`__.
|
||||
|
||||
OpenVINO Ecosystem
|
||||
##############################################################
|
||||
|
||||
Along with the primary components of model optimization and runtime, the toolkit also includes:
|
||||
|
||||
* `Neural Network Compression Framework (NNCF) <https://github.com/openvinotoolkit/nncf>`__ - a tool for enhanced OpenVINO™ inference to get performance boost with minimal accuracy drop.
|
||||
* :doc:`Openvino Notebooks <tutorials>`- Jupyter Python notebook tutorials, which demonstrate key features of the toolkit.
|
||||
* `OpenVINO Model Server <https://github.com/openvinotoolkit/model_server>`__ - a server that enables scalability via a serving microservice.
|
||||
* :doc:`OpenVINO Training Extensions <ote_documentation>` – a convenient environment to train Deep Learning models and convert them using the OpenVINO™ toolkit for optimized inference.
|
||||
* :doc:`Dataset Management Framework (Datumaro) <datumaro_documentation>` - a tool to build, transform, and analyze datasets.
|
||||
|
||||
Community
|
||||
##############################################################
|
||||
|
||||
OpenVINO community plays a vital role in the growth and development of the open-sourced toolkit. Users can contribute to OpenVINO and get support using the following channels:
|
||||
|
||||
* `OpenVINO GitHub issues, discussions and pull requests <https://github.com/openvinotoolkit/openvino>`__
|
||||
* `OpenVINO Blog <https://blog.openvino.ai/>`__
|
||||
* `Community Forum <https://community.intel.com/t5/Intel-Distribution-of-OpenVINO/bd-p/distribution-openvino-toolkit>`__
|
||||
* `OpenVINO video tutorials <https://www.youtube.com/watch?v=_Jnjt21ZDS8&list=PLg-UKERBljNxdIQir1wrirZJ50yTp4eHv>`__
|
||||
* `Support Information <https://www.intel.com/content/www/us/en/support/products/96066/software/development-software/openvino-toolkit.html>`__
|
||||
|
||||
Case Studies
|
||||
##############################################################
|
||||
|
||||
OpenVINO has been employed in various case studies across a wide range of industries and applications, including healthcare, retail, safety and security, transportation, and more. Read about how OpenVINO enhances efficiency, accuracy, and safety in different sectors on the `success stories page <https://www.intel.com/content/www/us/en/internet-of-things/ai-in-production/success-stories.html>`__.
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
# Additional Resources {#resources}
|
||||
.. {#resources}
|
||||
|
||||
Additional Resources
|
||||
====================
|
||||
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Learn more about OpenVINO from benchmark results, case studies
|
||||
@@ -28,6 +30,5 @@
|
||||
`Case Studies <https://www.intel.com/openvino-success-stories>`__ are articles about real-world examples of OpenVINO™ usage.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# OpenVINO™ Telemetry {#openvino_docs_telemetry_information}
|
||||
.. {#openvino_docs_telemetry_information}
|
||||
|
||||
OpenVINO™ Telemetry
|
||||
=====================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Learn about OpenVINO™ telemetry, that collects anonymous usage data for the purpose of improving OpenVINO™ tools.
|
||||
@@ -56,4 +58,3 @@ Telemetry Data Collection Details
|
||||
Any raw data that has reached the 14-month threshold is deleted from Google Analytics on a monthly basis.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,6 +1,8 @@
|
||||
# OpenVINO TensorFlow Frontend Capabilities and Limitations {#openvino_docs_MO_DG_TensorFlow_Frontend}
|
||||
.. {#openvino_docs_MO_DG_TensorFlow_Frontend}
|
||||
|
||||
OpenVINO TensorFlow Frontend Capabilities and Limitations
|
||||
=========================================================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: TensorFlow Frontend in OpenVINO Runtime is a C++ based frontend used
|
||||
@@ -16,4 +18,3 @@ The current limitations:
|
||||
* There is no full parity between the legacy frontend and the new frontend in MO. Known limitations compared to the legacy approach are: TF1 Control flow, Complex types, models requiring config files and old python extensions. The solution detects unsupported functionalities and provides fallback. To force the use of the legacy frontend, ``--use_legacy_frontend`` must be specified.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,6 +1,8 @@
|
||||
# Compatibility and Support {#compatibility_and_support}
|
||||
.. {#compatibility_and_support}
|
||||
|
||||
Compatibility and Support
|
||||
=========================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
@@ -22,4 +24,3 @@
|
||||
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,89 +0,0 @@
|
||||
# Supported Devices {#openvino_docs_OV_UG_supported_plugins_Supported_Devices}
|
||||
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Check the list of officially supported models in Intel®
|
||||
Distribution of OpenVINO™ toolkit.
|
||||
|
||||
|
||||
The OpenVINO runtime can infer various models of different input and output formats. Here, you can find configurations
|
||||
supported by OpenVINO devices, which are CPU, GPU, NPU, and GNA (Gaussian Neural Accelerator coprocessor).
|
||||
Currently, processors of the 11th generation and later (up to the 13th generation at the moment) provide a further performance boost, especially with INT8 models.
|
||||
|
||||
.. note::
|
||||
|
||||
With OpenVINO™ 2023.0 release, support has been cancelled for:
|
||||
- Intel® Neural Compute Stick 2 powered by the Intel® Movidius™ Myriad™ X
|
||||
- Intel® Vision Accelerator Design with Intel® Movidius™
|
||||
|
||||
To keep using the MYRIAD and HDDL plugins with your hardware, revert to the OpenVINO 2022.3 LTS release.
|
||||
|
||||
|
||||
|
||||
+---------------------------------------------------------------------+------------------------------------------------------------------------------------------------------+
|
||||
| OpenVINO Device | Supported Hardware |
|
||||
+=====================================================================+======================================================================================================+
|
||||
|| :doc:`CPU <openvino_docs_OV_UG_supported_plugins_CPU>` | Intel® Xeon® with Intel® Advanced Vector Extensions 2 (Intel® AVX2), Intel® Advanced Vector |
|
||||
|| (x86) | Extensions 512 (Intel® AVX-512), Intel® Advanced Matrix Extensions (Intel® AMX), |
|
||||
|| | Intel® Core™ Processors with Intel® AVX2, |
|
||||
|| | Intel® Atom® Processors with Intel® Streaming SIMD Extensions (Intel® SSE) |
|
||||
|| | |
|
||||
|| (Arm®) | Raspberry Pi™ 4 Model B, Apple® Mac mini with Apple silicon |
|
||||
|| | |
|
||||
+---------------------------------------------------------------------+------------------------------------------------------------------------------------------------------+
|
||||
|| :doc:`GPU <openvino_docs_OV_UG_supported_plugins_GPU>` | Intel® Processor Graphics including Intel® HD Graphics and Intel® Iris® Graphics, |
|
||||
|| | Intel® Arc™ A-Series Graphics, Intel® Data Center GPU Flex Series, Intel® Data Center GPU Max Series |
|
||||
+---------------------------------------------------------------------+------------------------------------------------------------------------------------------------------+
|
||||
|| :doc:`GNA <openvino_docs_OV_UG_supported_plugins_GNA>` | Intel® Speech Enabling Developer Kit, Amazon Alexa* Premium Far-Field Developer Kit, Intel® |
|
||||
|| (available in the Intel® Distribution of OpenVINO™ toolkit) | Pentium® Silver J5005 Processor, Intel® Pentium® Silver N5000 Processor, Intel® |
|
||||
|| | Celeron® J4005 Processor, Intel® Celeron® J4105 Processor, Intel® Celeron® |
|
||||
|| | Processor N4100, Intel® Celeron® Processor N4000, Intel® Core™ i3-8121U Processor, |
|
||||
|| | Intel® Core™ i7-1065G7 Processor, Intel® Core™ i7-1060G7 Processor, Intel® |
|
||||
|| | Core™ i5-1035G4 Processor, Intel® Core™ i5-1035G7 Processor, Intel® Core™ |
|
||||
|| | i5-1035G1 Processor, Intel® Core™ i5-1030G7 Processor, Intel® Core™ i5-1030G4 Processor, |
|
||||
|| | Intel® Core™ i3-1005G1 Processor, Intel® Core™ i3-1000G1 Processor, |
|
||||
|| | Intel® Core™ i3-1000G4 Processor |
|
||||
+---------------------------------------------------------------------+------------------------------------------------------------------------------------------------------+
|
||||
|| :doc:`NPU <openvino_docs_OV_UG_supported_plugins_NPU>` | |
|
||||
|| | |
|
||||
|| | |
|
||||
|| | |
|
||||
|| | |
|
||||
|| | |
|
||||
|| | |
|
||||
|| | |
|
||||
+---------------------------------------------------------------------+------------------------------------------------------------------------------------------------------+
|
||||
|
||||
Beside inference using a specific device, OpenVINO offers three inference modes for automated inference management. These are:
|
||||
|
||||
* :doc:`Automatic Device Selection <openvino_docs_OV_UG_supported_plugins_AUTO>` - automatically selects the best device
|
||||
available for the given task. It offers many additional options and optimizations, including inference on
|
||||
multiple devices at the same time.
|
||||
* :doc:`Multi-device Inference <openvino_docs_OV_UG_Running_on_multiple_devices>` - executes inference on multiple devices.
|
||||
Currently, this mode is considered a legacy solution. Using Automatic Device Selection is advised.
|
||||
* :doc:`Heterogeneous Inference <openvino_docs_OV_UG_Hetero_execution>` - enables splitting inference among several devices
|
||||
automatically, for example, if one device doesn’t support certain operations.
|
||||
|
||||
|
||||
Devices similar to the ones we have used for benchmarking can be accessed using `Intel® DevCloud for the Edge <https://devcloud.intel.com/edge/>`__,
|
||||
a remote development environment with access to Intel® hardware and the latest versions of the Intel® Distribution
|
||||
of OpenVINO™ Toolkit. `Learn more <https://devcloud.intel.com/edge/get_started/devcloud/>`__ or `Register here <https://inteliot.force.com/DevcloudForEdge/s/>`__.
|
||||
|
||||
|
||||
To learn more about each of the supported devices and modes, refer to the sections of:
|
||||
* :doc:`Inference Device Support <openvino_docs_OV_UG_Working_with_devices>`
|
||||
* :doc:`Inference Modes <openvino_docs_Runtime_Inference_Modes_Overview>`
|
||||
|
||||
|
||||
|
||||
For setting relevant configuration, refer to the
|
||||
:doc:`Integrate with Customer Application <openvino_docs_OV_UG_Integrate_OV_with_your_application>`
|
||||
topic (step 3 "Configure input and output").
|
||||
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
.. {#openvino_docs_OV_UG_supported_plugins_Supported_Devices}
|
||||
|
||||
Supported Devices
|
||||
=================
|
||||
|
||||
|
||||
|
||||
.. meta::
|
||||
:description: Check the list of officially supported models in Intel®
|
||||
Distribution of OpenVINO™ toolkit.
|
||||
|
||||
|
||||
OpenVINO enables you to implement its inference capabilities in your own software,
|
||||
utilizing various hardware. It currently supports the following processing units
|
||||
(for more details, see :doc:`system requirements <system_requirements>`):
|
||||
|
||||
* :doc:`CPU <openvino_docs_OV_UG_supported_plugins_CPU>`
|
||||
* :doc:`GPU <openvino_docs_OV_UG_supported_plugins_GPU>`
|
||||
* :doc:`GNA <openvino_docs_OV_UG_supported_plugins_GNA>`
|
||||
|
||||
|
||||
.. note::
|
||||
|
||||
GNA, currently available in the Intel® Distribution of OpenVINO™ toolkit,
|
||||
will be deprecated together with the hardware being discontinued
|
||||
in future CPU solutions.
|
||||
|
||||
With OpenVINO™ 2023.0 release, support has been cancelled for:
|
||||
- Intel® Neural Compute Stick 2 powered by the Intel® Movidius™ Myriad™ X
|
||||
- Intel® Vision Accelerator Design with Intel® Movidius™
|
||||
|
||||
To keep using the MYRIAD and HDDL plugins with your hardware, revert to the OpenVINO 2022.3 LTS release.
|
||||
|
||||
|
||||
Beside running inference with a specific device,
|
||||
OpenVINO offers automated inference management with the following inference modes:
|
||||
|
||||
* :doc:`Automatic Device Selection <openvino_docs_OV_UG_supported_plugins_AUTO>` - automatically selects the best device
|
||||
available for the given task. It offers many additional options and optimizations, including inference on
|
||||
multiple devices at the same time.
|
||||
* :doc:`Multi-device Inference <openvino_docs_OV_UG_Running_on_multiple_devices>` - executes inference on multiple devices.
|
||||
Currently, this mode is considered a legacy solution. Using Automatic Device Selection is advised.
|
||||
* :doc:`Heterogeneous Inference <openvino_docs_OV_UG_Hetero_execution>` - enables splitting inference among several devices
|
||||
automatically, for example, if one device doesn’t support certain operations.
|
||||
|
||||
|
||||
Devices similar to the ones used for benchmarking can be accessed using `Intel® DevCloud for the Edge <https://devcloud.intel.com/edge/>`__,
|
||||
a remote development environment with access to Intel® hardware and the latest versions of the Intel® Distribution
|
||||
of OpenVINO™ Toolkit. `Learn more <https://devcloud.intel.com/edge/get_started/devcloud/>`__ or `Register here <https://inteliot.force.com/DevcloudForEdge/s/>`__.
|
||||
|
||||
|
||||
To learn more about each of the supported devices and modes, refer to the sections of:
|
||||
* :doc:`Inference Device Support <openvino_docs_OV_UG_Working_with_devices>`
|
||||
* :doc:`Inference Modes <openvino_docs_Runtime_Inference_Modes_Overview>`
|
||||
|
||||
For setting up a relevant configuration, refer to the
|
||||
:doc:`Integrate with Customer Application <openvino_docs_OV_UG_Integrate_OV_with_your_application>`
|
||||
topic (step 3 "Configure input and output").
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
# Supported Models {#openvino_supported_models}
|
||||
.. {#openvino_supported_models}
|
||||
|
||||
Supported Models
|
||||
================
|
||||
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Check the list of officially supported models in Intel®
|
||||
@@ -30,6 +32,5 @@ The list is based on release 2023.0, as of June 01, 2023
|
||||
* As OpenVINO™ is open source you can enhance it with your own contribution to the GitHub repository. To learn more, see the articles on :doc:`OpenVINO Extensibility <openvino_docs_Extensibility_UG_Intro>`.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Supported Operations - by Framework Frontend {#openvino_resources_supported_operations_frontend}
|
||||
.. {#openvino_resources_supported_operations_frontend}
|
||||
|
||||
Supported Operations - by Framework Frontend
|
||||
============================================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Check the list of operations supported by OpenVINO Framework Frontend.
|
||||
@@ -1138,4 +1140,3 @@ This page lists operations supported by OpenVINO Framework Frontend.
|
||||
========================================== ==========================================================================================
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,6 +1,8 @@
|
||||
# Supported Operations - by Inference Devices {#openvino_resources_supported_operations}
|
||||
.. {#openvino_resources_supported_operations}
|
||||
|
||||
Supported Operations - by Inference Devices
|
||||
===========================================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
This page lists operations supported by OpenVINO inference devices. The table presents general information,
|
||||
for a more detailed and most recent listing of operations that are implemented and tested:
|
||||
@@ -168,4 +170,3 @@ for a more detailed and most recent listing of operations that are implemented a
|
||||
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,6 +1,8 @@
|
||||
# Performance Benchmarks {#openvino_docs_performance_benchmarks}
|
||||
.. {#openvino_docs_performance_benchmarks}
|
||||
|
||||
Performance Benchmarks
|
||||
======================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Use the benchmark results for Intel® Distribution of OpenVINO™
|
||||
@@ -13,7 +15,7 @@
|
||||
|
||||
openvino_docs_performance_benchmarks_faq
|
||||
OpenVINO Accuracy <openvino_docs_performance_int8_vs_fp32>
|
||||
Performance Data Spreadsheet (download xlsx) <https://docs.openvino.ai/2023.1/_static/benchmarks_files/OV-2023.0-Performance-Data.xlsx>
|
||||
Performance Data Spreadsheet (download xlsx) <https://docs.openvino.ai/2023.2/_static/benchmarks_files/OV-2023.2-Performance-Data.xlsx>
|
||||
openvino_docs_MO_DG_Getting_Performance_Numbers
|
||||
|
||||
|
||||
@@ -100,14 +102,14 @@ For a listing of all platforms and configurations used for testing, refer to the
|
||||
|
||||
.. grid-item::
|
||||
|
||||
.. button-link:: _static/benchmarks_files/OV-2023.1-Platform_list.pdf
|
||||
.. button-link:: _static/benchmarks_files/OV-2023.2-platform_list.pdf
|
||||
:color: primary
|
||||
:outline:
|
||||
:expand:
|
||||
|
||||
:material-regular:`download;1.5em` Click for Hardware Platforms [PDF]
|
||||
|
||||
.. button-link:: _static/benchmarks_files/OV-2023.1-system-info-detailed.xlsx
|
||||
.. button-link:: _static/benchmarks_files/OV-2023.2-system-info-detailed.xlsx
|
||||
:color: primary
|
||||
:outline:
|
||||
:expand:
|
||||
@@ -166,7 +168,7 @@ or `create an account <https://www.intel.com/content/www/us/en/secure/forms/devc
|
||||
Disclaimers
|
||||
####################################
|
||||
|
||||
* Intel® Distribution of OpenVINO™ toolkit performance results are based on release 2023.1, as of September 12, 2023.
|
||||
* Intel® Distribution of OpenVINO™ toolkit performance results are based on release 2023.2, as of November 15, 2023.
|
||||
|
||||
* OpenVINO Model Server performance results are based on release 2023.0, as of June 01, 2023.
|
||||
|
||||
@@ -179,4 +181,3 @@ Your costs and results may vary.
|
||||
Intel optimizations, for Intel compilers or other products, may not optimize to the same degree for non-Intel products.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,7 +1,9 @@
|
||||
# Getting Performance Numbers {#openvino_docs_MO_DG_Getting_Performance_Numbers}
|
||||
.. {#openvino_docs_MO_DG_Getting_Performance_Numbers}
|
||||
|
||||
Getting Performance Numbers
|
||||
===========================
|
||||
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
This guide explains how to use the benchmark_app to get performance numbers. It also explains how the performance
|
||||
numbers are reflected through internal inference performance counters and execution graphs. It also includes
|
||||
@@ -154,6 +156,5 @@ Therefore, you can also compile OpenVINO from the source code with ITT enabled a
|
||||
insights in the application-level performance on the timeline view.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
# Performance Information F.A.Q. {#openvino_docs_performance_benchmarks_faq}
|
||||
.. {#openvino_docs_performance_benchmarks_faq}
|
||||
|
||||
Performance Information F.A.Q.
|
||||
==============================
|
||||
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
|
||||
.. meta::
|
||||
@@ -49,14 +51,10 @@
|
||||
- Public Network
|
||||
- Task
|
||||
- Input Size
|
||||
* - `BLOOMZ-560M <https://huggingface.co/bigscience/bloomz-560m>`__
|
||||
- BigScience Bloomz & MT0
|
||||
- Transformer based llm
|
||||
- 2048
|
||||
* - `GPT-J-6B <https://huggingface.co/EleutherAI/gpt-j-6b>`__
|
||||
- Eleuther AI
|
||||
* - `chatGLM2-6B <https://huggingface.co/THUDM/chatglm2-6b/tree/main>`__
|
||||
- THUDM
|
||||
- Transformer
|
||||
- 2048
|
||||
- 32K
|
||||
* - `Llama-2-7b-chat <https://ai.meta.com/llama/>`__
|
||||
- Meta AI
|
||||
- Auto regressive language
|
||||
@@ -77,6 +75,14 @@
|
||||
- DeepLab v3 Tf
|
||||
- semantic segmentation
|
||||
- 513x513
|
||||
* - `efficientdet-d0 <https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/efficientdet-d0-tf>`__
|
||||
- Efficientdet
|
||||
- classification
|
||||
- 512x512
|
||||
* - `faster_rcnn_resnet50_coco <https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/faster_rcnn_resnet50_coco>`__
|
||||
- Faster RCNN TF
|
||||
- object detection
|
||||
- 600x1024
|
||||
* - `mobilenet-v2 <https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/mobilenet-v2-pytorch>`__
|
||||
- Mobilenet V2 PyTorch
|
||||
- classification
|
||||
@@ -161,4 +167,3 @@
|
||||
inference is required.
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,7 +1,9 @@
|
||||
# Model Accuracy {#openvino_docs_performance_int8_vs_fp32}
|
||||
.. {#openvino_docs_performance_int8_vs_fp32}
|
||||
|
||||
Model Accuracy
|
||||
==============
|
||||
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
The following two tables present the absolute accuracy drop calculated as the accuracy difference
|
||||
between OV-accuracy and the original frame work accuracy for FP32, and the same for INT8 and FP16
|
||||
@@ -25,87 +27,93 @@ for more information.
|
||||
* - bert-base-cased
|
||||
- SST-2_bert_cased_padded
|
||||
- accuracy
|
||||
- -3.00%
|
||||
- -2.00%
|
||||
- 2.94%
|
||||
- -0.76%
|
||||
- 2.42%
|
||||
- 2.72%
|
||||
* - bert-large-uncased-whole-word-masking-squad-0001
|
||||
- SQUAD_v1_1_bert_msl384_mql64_ds128_lowercase
|
||||
- F1
|
||||
- -0.04%
|
||||
- 0.03%
|
||||
- 0.06%
|
||||
- 0.07%
|
||||
- -0.03%
|
||||
- 0.11%
|
||||
* - deeplabv3
|
||||
- VOC2012_segm
|
||||
- mean_iou
|
||||
- 0.00%
|
||||
- 0.49%
|
||||
- 0.23%
|
||||
- -0.13%
|
||||
- -0.16%
|
||||
* - efficientdet-d0
|
||||
- COCO2017_detection_91cl
|
||||
- coco_precision
|
||||
- -0.84%
|
||||
- -0.59%
|
||||
- -0.63%
|
||||
* - faster_rcnn_resnet50_coco
|
||||
- COCO2017_detection_91cl_bkgr
|
||||
- coco_orig_precision
|
||||
- -0.19%
|
||||
- -0.19%
|
||||
- -0.04%
|
||||
* - mobilenet-v2
|
||||
- ImageNet2012
|
||||
- accuracy @ top1
|
||||
-
|
||||
- 0.97%
|
||||
- -0.97%
|
||||
- -0.95%
|
||||
* - resnet-50
|
||||
- ImageNet2012
|
||||
- accuracy @ top1
|
||||
- 0.20%
|
||||
- 0.12%
|
||||
- -0.09%
|
||||
- -0.12%
|
||||
- -0.19%
|
||||
* - ssd-mobilenet-v1-coco
|
||||
- COCO2017_detection_80cl_bkgr
|
||||
- coco-precision
|
||||
- 2.97%
|
||||
- 0.29%
|
||||
- -0.31%
|
||||
- -2.97%
|
||||
- -0.29%
|
||||
- -0.26%
|
||||
* - ssd-resnet34-1200
|
||||
- COCO2017_detection_80cl_bkgr
|
||||
- map
|
||||
- 0.06%
|
||||
- 0.06%
|
||||
- -0.03%
|
||||
- -0.06%
|
||||
- 0.04%
|
||||
* - unet-camvid-onnx-0001
|
||||
- CamVid_12cl
|
||||
- mean_iou @ mean
|
||||
- 6.32%
|
||||
- -6.40%
|
||||
- -0.63%
|
||||
- -6.32%
|
||||
- 6.40%
|
||||
- 6.40%
|
||||
* - yolo_v3
|
||||
- COCO2017_detection_80cl
|
||||
- map
|
||||
- -0.06%
|
||||
- -0.21%
|
||||
- -0.71%
|
||||
- -0.13%
|
||||
- -0.26%
|
||||
- -0.44%
|
||||
* - yolo_v3_tiny
|
||||
- COCO2017_detection_80cl
|
||||
- map
|
||||
- 0.73%
|
||||
- 0.21%
|
||||
- -0.78%
|
||||
- -0.11%
|
||||
- -0.13%
|
||||
- -0.15%
|
||||
* - yolo_v8n
|
||||
- COCO2017_detection_80cl
|
||||
- map
|
||||
- -0.26%
|
||||
- -0.22%
|
||||
- 0.12%
|
||||
* - bloomz-560m
|
||||
- ROOTS corpus
|
||||
- 0.27%
|
||||
- 0.23%
|
||||
- 0.17%
|
||||
* - chatGLM2-6b
|
||||
- lambada openai
|
||||
- ppl
|
||||
-
|
||||
- 17.595
|
||||
-
|
||||
-
|
||||
* - GPT-J-6B
|
||||
- Pile dataset
|
||||
- ppl
|
||||
-
|
||||
- 4.11
|
||||
- 4.11
|
||||
* - Llama-2-7b-chat
|
||||
- Wiki, StackExch, Crawl
|
||||
- ppl
|
||||
-
|
||||
- 3.27
|
||||
- 3.27
|
||||
- 3.268
|
||||
-
|
||||
* - Stable-Diffusion-V2-1
|
||||
- LIAON-5B
|
||||
- ppl
|
||||
@@ -131,15 +139,27 @@ for more information.
|
||||
* - bert-large-uncased-whole-word-masking-squad-0001
|
||||
- SQUAD_v1_1_bert_msl384_mql64_ds128_lowercase
|
||||
- F1
|
||||
- -0.19%
|
||||
- 0.04%
|
||||
- 0.04%
|
||||
- 0.04%
|
||||
* - deeplabv3
|
||||
- VOC2012_segm
|
||||
- mean_iou
|
||||
- 0.49%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
* - efficientdet-d0
|
||||
- COCO2017_detection_91cl
|
||||
- coco_precision
|
||||
- -0.02%
|
||||
- -0.02%
|
||||
- -0.02%
|
||||
* - faster_rcnn_resnet50_coco
|
||||
- COCO2017_detection_91cl_bkgr
|
||||
- coco_orig_precision
|
||||
- 0.00%
|
||||
-
|
||||
- 0.00%
|
||||
* - mobilenet-v2
|
||||
- ImageNet2012
|
||||
- accuracy @ top1
|
||||
@@ -150,7 +170,7 @@ for more information.
|
||||
- ImageNet2012
|
||||
- accuracy @ top1
|
||||
- 0.00%
|
||||
- -0.02%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
* - ssd-mobilenet-v1-coco
|
||||
- COCO2017_detection_80cl_bkgr
|
||||
@@ -161,26 +181,26 @@ for more information.
|
||||
* - ssd-resnet34-1200
|
||||
- COCO2017_detection_80cl_bkgr
|
||||
- map
|
||||
- 0.01%
|
||||
- 0.06%
|
||||
- -0.06%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
* - unet-camvid-onnx-0001
|
||||
- CamVid_12cl
|
||||
- mean_iou @ mean
|
||||
- 0.02%
|
||||
- -6.45%
|
||||
- 6.45%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
* - yolo_v3
|
||||
- COCO2017_detection_80cl
|
||||
- map
|
||||
- 0.00%
|
||||
- 0.01%
|
||||
- 0.01%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
* - yolo_v3_tiny
|
||||
- COCO2017_detection_80cl
|
||||
- map
|
||||
- 0.00%
|
||||
- -0.02%
|
||||
- -0.04%
|
||||
- -0.04%
|
||||
- 0.02%
|
||||
* - yolo_v8n
|
||||
- COCO2017_detection_80cl
|
||||
@@ -188,24 +208,18 @@ for more information.
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
- 0.00%
|
||||
* - bloomz-560m
|
||||
- ROOTS corpus
|
||||
* - chatGLM2-6b
|
||||
- lambada-openai
|
||||
- ppl
|
||||
-
|
||||
- 22.89
|
||||
- 22.89
|
||||
* - GPT-J-6B
|
||||
- Pile dataset
|
||||
- ppl
|
||||
- 17.488
|
||||
-
|
||||
- 4.10
|
||||
- 4.10
|
||||
* - Llama-2-7b-chat
|
||||
- Wiki, StackExch, Crawl
|
||||
- ppl
|
||||
-
|
||||
- 2.91
|
||||
- 2.91
|
||||
- 3.262
|
||||
-
|
||||
* - Stable-Diffusion-V2-1
|
||||
- LIAON-5B
|
||||
- ppl
|
||||
@@ -216,4 +230,3 @@ for more information.
|
||||
Notes: For all accuracy metrics except perplexity a "-", (minus sign), indicates an accuracy drop.
|
||||
For perplexity the values do not indicate a deviation from a reference but are the actual measured accuracy for the model.
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,334 +0,0 @@
|
||||
# Pre-release Information {#prerelease_information}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Check the pre-release information that includes a general
|
||||
changelog for each version of OpenVINO Toolkit published under
|
||||
the current cycle.
|
||||
|
||||
To ensure you can test OpenVINO's upcoming features even before they are officially released,
|
||||
OpenVINO developers continue to roll out pre-release software. On this page you can find
|
||||
a general changelog for each version published under the current cycle.
|
||||
|
||||
Your feedback on these new features is critical for us to make the best possible production quality version.
|
||||
Please file a github Issue on these with the label “pre-release” so we can give it immediate attention. Thank you.
|
||||
|
||||
.. note::
|
||||
|
||||
These versions are pre-release software and have not undergone full validation or qualification. OpenVINO™ toolkit pre-release is:
|
||||
|
||||
* NOT to be incorporated into production software/solutions.
|
||||
* NOT subject to official support.
|
||||
* Subject to change in the future.
|
||||
* Introduced to allow early testing and get early feedback from the community.
|
||||
|
||||
.. button-link:: https://github.com/openvinotoolkit/openvino/issues/new?assignees=octocat&labels=Pre-release%2Csupport_request&projects=&template=pre_release_feedback.yml&title=%5BPre-Release+Feedback%5D%3A
|
||||
:color: primary
|
||||
:outline:
|
||||
|
||||
:material-regular:`feedback;1.4em` Share your feedback
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.. dropdown:: OpenVINO Toolkit 2023.2 Dev 22.09.2023
|
||||
:animate: fade-in-slide-down
|
||||
:color: primary
|
||||
:open:
|
||||
|
||||
**What's Changed:**
|
||||
|
||||
* CPU runtime:
|
||||
|
||||
* Optimized Yolov8n and YoloV8s models on BF16/FP32.
|
||||
* Optimized Falcon model on 4th Generation Intel® Xeon® Scalable Processors.
|
||||
|
||||
* GPU runtime:
|
||||
|
||||
* int8 weight compression further improves LLM performance. PR #19548
|
||||
* Optimization for gemm & fc in iGPU. PR #19780
|
||||
|
||||
* TensorFlow FE:
|
||||
|
||||
* Added support for Selu operation. PR #19528
|
||||
* Added support for XlaConvV2 operation. PR #19466
|
||||
* Added support for TensorListLength and TensorListResize operations. PR #19390
|
||||
|
||||
* PyTorch FE:
|
||||
|
||||
* New operations supported
|
||||
|
||||
* aten::minimum aten::maximum. PR #19996
|
||||
* aten::broadcast_tensors. PR #19994
|
||||
* added support aten::logical_and, aten::logical_or, aten::logical_not, aten::logical_xor. PR #19981
|
||||
* aten::scatter_reduce and extend aten::scatter. PR #19980
|
||||
* prim::TupleIndex operation. PR #19978
|
||||
* mixed precision in aten::min/max. PR #19936
|
||||
* aten::tile op PR #19645
|
||||
* aten::one_hot PR #19779
|
||||
* PReLU. PR #19515
|
||||
* aten::swapaxes. PR #19483
|
||||
* non-boolean inputs for __or__ and __and__ operations. PR #19268
|
||||
|
||||
* Torchvision NMS can accept negative scores. PR #19826
|
||||
* New openvino_notebooks:
|
||||
|
||||
* Visual Question Answering and Image Captioning using BLIP
|
||||
|
||||
**Fixed GitHub issues**
|
||||
|
||||
* Fixed #19784 “[Bug]: Cannot install libprotobuf-dev along with libopenvino-2023.0.2 on Ubuntu 22.04” with PR #19788
|
||||
* Fixed #19617 “Add a clear error message when creating an empty Constant” with PR #19674
|
||||
* Fixed #19616 “Align openvino.compile_model and openvino.Core.compile_model functions” with PR #19778
|
||||
* Fixed #19469 “[Feature Request]: Add SeLu activation in the OpenVino IR (TensorFlow Conversion)” with PR #19528
|
||||
* Fixed #19019 “[Bug]: Low performance of the TF quantized model.” With PR #19735
|
||||
* Fixed #19018 “[Feature Request]: Support aarch64 python wheel for Linux” with PR #19594
|
||||
* Fixed #18831 “Question: openvino support for Nvidia Jetson Xavier ?” with PR #19594
|
||||
* Fixed #18786 “OpenVINO Wheel does not install Debug libraries when CMAKE_BUILD_TYPE is Debug #18786” with PR #19197
|
||||
* Fixed #18731 “[Bug] Wrong output shapes of MaxPool” with PR #18965
|
||||
* Fixed #18091 “[Bug] 2023.0 Version crashes on Jetson Nano - L4T - Ubuntu 18.04” with PR #19717
|
||||
* Fixed #7194 “Conan for simplifying dependency management” with PR #17580
|
||||
|
||||
|
||||
**Acknowledgements:**
|
||||
|
||||
Thanks for contributions from the OpenVINO developer community:
|
||||
|
||||
* @siddhant-0707,
|
||||
* @PRATHAM-SPS,
|
||||
* @okhovan
|
||||
|
||||
|
||||
.. dropdown:: OpenVINO Toolkit 2023.1.0.dev20230728
|
||||
:animate: fade-in-slide-down
|
||||
:color: secondary
|
||||
|
||||
`Check on GitHub <https://github.com/openvinotoolkit/openvino/releases/tag/2023.1.0.dev20230811>`__
|
||||
|
||||
**New features:**
|
||||
|
||||
* CPU runtime:
|
||||
|
||||
* Enabled weights decompression support for Large Language models (LLMs). The implementation
|
||||
supports avx2 and avx512 HW targets for Intel® Core™ processors for improved
|
||||
latency mode (FP32 VS FP32+INT8 weights comparison). For 4th Generation Intel® Xeon®
|
||||
Scalable Processors (formerly Sapphire Rapids) this INT8 decompression feature provides
|
||||
performance improvement, compared to pure BF16 inference.
|
||||
* Reduced memory consumption of compile model stage by moving constant folding of Transpose
|
||||
nodes to the CPU Runtime side.
|
||||
* Set FP16 inference precision by default for non-convolution networks on ARM. Convolution
|
||||
network will be executed in FP32.
|
||||
|
||||
* GPU runtime: Added paddings for dynamic convolutions to improve performance for models like
|
||||
Stable-Diffusion v2.1.
|
||||
|
||||
* Python API:
|
||||
|
||||
* Added the ``torchvision.transforms`` object to OpenVINO preprocessing.
|
||||
* Moved all python tools related to OpenVINO into a single namespace,
|
||||
improving user experience with better API readability.
|
||||
|
||||
* TensorFlow FE:
|
||||
|
||||
* Added support for the TensorFlow 1 Checkpoint format. All native TensorFlow formats are now enabled.
|
||||
* Added support for 8 new operations:
|
||||
|
||||
* MaxPoolWithArgmax
|
||||
* UnravelIndex
|
||||
* AdjustContrastv2
|
||||
* InvertPermutation
|
||||
* CheckNumerics
|
||||
* DivNoNan
|
||||
* EnsureShape
|
||||
* ShapeN
|
||||
|
||||
* PyTorch FE:
|
||||
|
||||
* Added support for 6 new operations. To know how to enjoy PyTorch models conversion follow
|
||||
this `Link <https://docs.openvino.ai/2023.1/openvino_docs_MO_DG_prepare_model_convert_model_Convert_Model_From_PyTorch.html#experimental-converting-a-pytorch-model-with-pytorch-frontend>`__
|
||||
|
||||
* aten::concat
|
||||
* aten::masked_scatter
|
||||
* aten::linspace
|
||||
* aten::view_as
|
||||
* aten::std
|
||||
* aten::outer
|
||||
* aten::broadcast_to
|
||||
|
||||
**New openvino_notebooks:**
|
||||
|
||||
* `245-typo-detector <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/245-typo-detector>`__
|
||||
: English Typo Detection in sentences with OpenVINO™
|
||||
|
||||
* `247-code-language-id <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/247-code-language-id/247-code-language-id.ipynb>`__
|
||||
: Identify the programming language used in an arbitrary code snippet
|
||||
|
||||
* `121-convert-to-openvino <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/121-convert-to-openvino>`__
|
||||
: Learn OpenVINO model conversion API
|
||||
|
||||
* `244-named-entity-recognition <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/244-named-entity-recognition>`__
|
||||
: Named entity recognition with OpenVINO™
|
||||
|
||||
* `246-depth-estimation-videpth <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/246-depth-estimation-videpth>`__
|
||||
: Monocular Visual-Inertial Depth Estimation with OpenVINO™
|
||||
|
||||
* `248-stable-diffusion-xl <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/248-stable-diffusion-xl>`__
|
||||
: Image generation with Stable Diffusion XL
|
||||
|
||||
* `249-oneformer-segmentation <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/249-oneformer-segmentation>`__
|
||||
: Universal segmentation with OneFormer
|
||||
|
||||
|
||||
.. dropdown:: OpenVINO Toolkit 2023.1.0.dev20230728
|
||||
:animate: fade-in-slide-down
|
||||
:color: secondary
|
||||
|
||||
`Check on GitHub <https://github.com/openvinotoolkit/openvino/releases/tag/2023.1.0.dev20230728>`__
|
||||
|
||||
**New features:**
|
||||
|
||||
* Common:
|
||||
|
||||
- Proxy & hetero plugins have been migrated to API 2.0, providing enhanced compatibility and stability.
|
||||
- Symbolic shape inference preview is now available, leading to improved performance for Large Language models (LLMs).
|
||||
|
||||
* CPU Plugin: Memory efficiency for output data between CPU plugin and the inference request has been significantly improved,
|
||||
resulting in better performance for LLMs.
|
||||
* GPU Plugin:
|
||||
|
||||
- Enabled support for dynamic shapes in more models, leading to improved performance.
|
||||
- Introduced the 'if' and DetectionOutput operator to enhance model capabilities.
|
||||
- Various performance improvements for StableDiffusion, SegmentAnything, U-Net, and Large Language models.
|
||||
- Optimized dGPU performance through the integration of oneDNN 3.2 and fusion optimizations for MVN, Crop+Concat, permute, etc.
|
||||
|
||||
* Frameworks:
|
||||
|
||||
- PyTorch Updates: OpenVINO now supports originally quantized PyTorch models, including models produced with the Neural Network Compression Framework (NNCF).
|
||||
- TensorFlow FE: Now supports Switch/Merge operations, bringing TensorFlow 1.x control flow support closer to full compatibility and enabling more models.
|
||||
- Python API: Python Conversion API is now the primary conversion path, making it easier for Python developers to work with OpenVINO.
|
||||
|
||||
* NNCF: Enabled SmoothQuant method for Post-training Quantization, offering more techniques for quantizing models.
|
||||
|
||||
**Distribution:**
|
||||
|
||||
* Added conda-forge pre-release channel, simplifying OpenVINO pre-release installation with "conda install -c "conda-forge/label/openvino_dev" openvino" command.
|
||||
* Python API is now distributed as a part of conda-forge distribution, allowing users to access it using the command above.
|
||||
* Runtime can now be installed and used via vcpkg C++ package manager, providing more flexibility in integrating OpenVINO into projects.
|
||||
|
||||
**New models:**
|
||||
|
||||
* Enabled Large Language models such as open-llama, bloom, dolly-v2, GPT-J, llama-2, and more. We encourage users to try running their custom LLMs and share their feedback with us!
|
||||
* Optimized performance for Stable Diffusion v2.1 (FP16 and INT8 for GPU) and Clip (CPU, INT8) models, improving their overall efficiency and accuracy.
|
||||
|
||||
**New openvino_notebooks:**
|
||||
|
||||
* `242-freevc-voice-conversion <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/242-freevc-voice-conversion>`__ - High-Quality Text-Free One-Shot Voice Conversion with FreeVC
|
||||
* `241-riffusion-text-to-music <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/241-riffusion-text-to-music>`__ - Text-to-Music generation using Riffusion
|
||||
* `220-books-alignment-labse <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/220-cross-lingual-books-alignment>`__ - Cross-lingual Books Alignment With Transformers
|
||||
* `243-tflite-selfie-segmentation <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/243-tflite-selfie-segmentation>`__ - Selfie Segmentation using TFLite
|
||||
|
||||
|
||||
.. dropdown:: OpenVINO Toolkit 2023.1.0.dev20230623
|
||||
:animate: fade-in-slide-down
|
||||
:color: secondary
|
||||
|
||||
The first pre-release for OpenVINO 2023.1, focused on fixing bugs and performance issues.
|
||||
|
||||
`Check on GitHub <https://github.com/openvinotoolkit/openvino/releases/tag/2023.1.0.dev20230623>`__
|
||||
|
||||
|
||||
.. dropdown:: OpenVINO Toolkit 2023.0.0.dev20230407
|
||||
:animate: fade-in-slide-down
|
||||
:color: secondary
|
||||
|
||||
Note that a new distribution channel has been introduced for C++ developers: `Conda Forge <https://anaconda.org/conda-forge/openvino>`__
|
||||
(the 2022.3.0 release is available there now).
|
||||
|
||||
* ARM device support is improved:
|
||||
|
||||
* increased model coverage up to the scope of x86,
|
||||
* dynamic shapes enabled,
|
||||
* performance boosted for many models including BERT,
|
||||
* validated for Raspberry Pi 4 and Apple® Mac M1/M2.
|
||||
|
||||
* Performance for NLP scenarios is improved, especially for int8 models.
|
||||
* The CPU device is enabled with BF16 data types, such that quantized models (INT8) can be run with BF16 plus INT8 mixed
|
||||
precision, taking full advantage of the AMX capability of 4th Generation Intel® Xeon® Scalable Processors
|
||||
(formerly Sapphire Rapids). The customer sees BF16/INT8 advantage, by default.
|
||||
* Performance is improved on modern, hybrid Intel® Xeon® and Intel® Core® platforms,
|
||||
where threads can be reliably and correctly mapped to the E-cores, P-cores, or both CPU core types.
|
||||
It is now possible to optimize for performance or for power savings as needed.
|
||||
* Neural Network Compression Framework (NNCF) becomes the quantization tool of choice. It now enables you to perform
|
||||
post-training optimization, as well as quantization-aware training. Try it out: ``pip install nncf``.
|
||||
Post-training Optimization Tool (POT) has been deprecated and will be removed in the future
|
||||
(`MR16758 <https://github.com/openvinotoolkit/openvino/pull/16758/files>`__).
|
||||
* New models are enabled, such as:
|
||||
|
||||
* Stable Diffusion 2.0,
|
||||
* Paddle Slim,
|
||||
* Segment Anything Model (SAM),
|
||||
* Whisper,
|
||||
* YOLOv8.
|
||||
|
||||
* Bug fixes:
|
||||
|
||||
* Fixes the problem of OpenVINO-dev wheel not containing the benchmark_app package.
|
||||
* Rolls back the default of model saving with the FP16 precision - FP32 is the default again.
|
||||
|
||||
* Known issues:
|
||||
|
||||
* PyTorch model conversion via convert_model Python API fails if “silent=false” is specified explicitly.
|
||||
By default, this parameter is set to true and there should be no issues.
|
||||
|
||||
|
||||
.. dropdown:: OpenVINO Toolkit 2023.0.0.dev20230407
|
||||
:animate: fade-in-slide-down
|
||||
:color: secondary
|
||||
|
||||
* Enabled remote tensor in C API 2.0 (accepting tensor located in graph memory)
|
||||
* Introduced model caching on GPU. Model Caching, which reduces First Inference Latency (FIL), is
|
||||
extended to work as a single method on both CPU and GPU plug-ins.
|
||||
* Added the post-training Accuracy-Aware Quantization mechanism for OpenVINO IR. By using this mechanism
|
||||
the user can define the accuracy drop criteria and NNCF will consider it during the quantization.
|
||||
* Migrated the CPU plugin to OneDNN 3.1.
|
||||
* Enabled CPU fall-back for the AUTO plugin - in case of run-time failure of networks on accelerator devices, CPU is used.
|
||||
* Now, AUTO supports the option to disable CPU as the initial acceleration device to speed up first-inference latency.
|
||||
* Implemented ov::hint::inference_precision, which enables running network inference independently of the IR precision.
|
||||
The default mode is FP16, it is possible to infer in FP32 to increase accuracy.
|
||||
* Optimized performance on dGPU with Intel oneDNN v3.1, especially for transformer models.
|
||||
* Enabled dynamic shapes on iGPU and dGPU for Transformer(NLP) models. Not all dynamic models are enabled but model coverage will be expanded in following releases.
|
||||
* Improved performance for Transformer models for NLP pipelines on CPU.
|
||||
* Extended support to the following models:
|
||||
|
||||
* Enabled MLPerf RNN-T model.
|
||||
* Enabled Detectron2 MaskRCNN.
|
||||
* Enabled OpenSeeFace models.
|
||||
* Enabled Clip model.
|
||||
* Optimized WeNet model.
|
||||
|
||||
|
||||
Known issues:
|
||||
|
||||
* OpenVINO-dev wheel does not contain the benchmark_app package
|
||||
|
||||
|
||||
|
||||
.. dropdown:: OpenVINO Toolkit 2023.0.0.dev20230217
|
||||
:animate: fade-in-slide-down
|
||||
:color: secondary
|
||||
|
||||
OpenVINO™ repository tag: `2023.0.0.dev20230217 <https://github.com/openvinotoolkit/openvino/releases/tag/2023.0.0.dev20230217>`__
|
||||
|
||||
* Enabled PaddlePaddle Framework 2.4
|
||||
* Preview of TensorFlow Lite Frontend – Load models directly via “read_model” into OpenVINO Runtime and export OpenVINO IR format using model conversion API or “convert_model”
|
||||
* PyTorch Frontend is available as an experimental feature which will allow you to convert PyTorch models, using convert_model Python API directly from your code without the need to export to the ONNX format. Model coverage is continuously increasing. Feel free to start using the option and give us feedback.
|
||||
* Model conversion API now uses the TensorFlow Frontend as the default path for conversion to IR. Known limitations compared to the legacy approach are: TF1 Loop, Complex types, models requiring config files and old python extensions. The solution detects unsupported functionalities and provides fallback. To force using the legacy frontend ``use_legacy_fronted`` can be specified.
|
||||
* Model conversion API now supports out-of-the-box conversion of TF2 Object Detection models. At this point, same performance experience is guaranteed only on CPU devices. Feel free to start enjoying TF2 Object Detection models without config files!
|
||||
* Introduced new option ov::auto::enable_startup_fallback / ENABLE_STARTUP_FALLBACK to control whether to use CPU to accelerate first inference latency for accelerator HW devices like GPU.
|
||||
* New FrontEndManager register_front_end(name, lib_path) interface added, to remove “OV_FRONTEND_PATH” env var (a way to load non-default frontends).
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
388
docs/articles_en/about_openvino/releasenotes_for_openvino.rst
Normal file
388
docs/articles_en/about_openvino/releasenotes_for_openvino.rst
Normal file
@@ -0,0 +1,388 @@
|
||||
.. {#openvino_release_notes}
|
||||
|
||||
OpenVINO Release Notes
|
||||
======================
|
||||
|
||||
|
||||
The Intel® Distribution of OpenVINO™ toolkit is an open-source solution for optimizing
|
||||
and deploying AI inference in domains such as computer vision,automatic speech
|
||||
recognition, natural language processing, recommendation systems, and generative AI.
|
||||
With its plug-in architecture, OpenVINO enables developers to write once and deploy
|
||||
anywhere. We are proud to announce the release of OpenVINO 2023.2 introducing a range
|
||||
of new features, improvements, and deprecations aimed at enhancing the developer
|
||||
experience.
|
||||
|
||||
New and changed in 2023.2
|
||||
###########################
|
||||
|
||||
Summary of major features and improvements
|
||||
++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
* More Generative AI coverage and framework integrations to minimize code changes.
|
||||
|
||||
* **Expanded model support for direct PyTorch model conversion** - automatically convert
|
||||
additional models directly from PyTorch or execute via ``torch.compile`` with OpenVINO
|
||||
as the backend.
|
||||
* **New and noteworthy models supported** - we have enabled models used for chatbots,
|
||||
instruction following, code generation, and many more, including prominent models
|
||||
like Llava, chatGLM, Bark (text to audio) and LCM (Latent Consistency Models, an
|
||||
optimized version of Stable Diffusion).
|
||||
* **Easier optimization and conversion of Hugging Face models** - compress LLM models
|
||||
to Int8 with the Hugging Face Optimum command line interface and export models to
|
||||
the OpenVINO IR format.
|
||||
* **OpenVINO is now available on Conan** - a package manager which allows more seamless
|
||||
package management for large scale projects for C and C++ developers.
|
||||
|
||||
* Broader Large Language Model (LLM) support and more model compression techniques.
|
||||
|
||||
* Accelerate inference for LLM models on Intel® CoreTM CPU and iGPU with the
|
||||
use of Int8 model weight compression.
|
||||
* Expanded model support for dynamic shapes for improved performance on GPU.
|
||||
* Preview support for Int4 model format is now included. Int4 optimized model
|
||||
weights are now available to try on Intel® Core™ CPU and iGPU, to accelerate
|
||||
models like Llama 2 and chatGLM2.
|
||||
* The following Int4 model compression formats are supported for inference
|
||||
in runtime:
|
||||
|
||||
* Generative Pre-training Transformer Quantization (GPTQ); with GPTQ-compressed
|
||||
models, you can access them through the Hugging Face repositories.
|
||||
* Native Int4 compression through Neural Network Compression Framework (NNCF).
|
||||
|
||||
* More portability and performance to run AI at the edge, in the cloud, or locally.
|
||||
|
||||
* **In 2023.1 we announced full support for ARM** architecture, now we have improved
|
||||
performance by enabling FP16 model formats for LLMs and integrating additional
|
||||
acceleration libraries to improve latency.
|
||||
|
||||
Support Change and Deprecation Notices
|
||||
++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
* The OpenVINO™ Development Tools package (pip install openvino-dev) is deprecated
|
||||
and will be removed from installation options and distribution channels with
|
||||
2025.0. To learn more, refer to the
|
||||
:doc:`OpenVINO Legacy Features and Components page <openvino_legacy_features>`.
|
||||
To ensure optimal performance, install the OpenVINO package (pip install openvino),
|
||||
which includes essential components such as OpenVINO Runtime, OpenVINO Converter,
|
||||
and Benchmark Tool.
|
||||
|
||||
* Tools:
|
||||
|
||||
* :doc:`Deployment Manager <openvino_docs_install_guides_deployment_manager_tool>`
|
||||
is deprecated and will be removed in the 2024.0 release.
|
||||
* Accuracy Checker is deprecated and will be discontinued with 2024.0.
|
||||
* Post-Training Optimization Tool (POT) is deprecated and will be
|
||||
discontinued with 2024.0.
|
||||
* Model Optimizer is deprecated and will be fully supported up until the 2025.0
|
||||
release. Model conversion to the OpenVINO format should be performed through
|
||||
OpenVINO Model Converter, which is part of the PyPI package. Follow the
|
||||
:doc:`Model Optimizer to OpenVINO Model Converter transition <openvino_docs_OV_Converter_UG_prepare_model_convert_model_MO_OVC_transition>`
|
||||
guide for smoother transition. Known limitations are TensorFlow model with
|
||||
TF1 Control flow and object detection models. These limitations relate to
|
||||
the gap in TensorFlow direct conversion capabilities which will be addressed
|
||||
in upcoming releases.
|
||||
* PyTorch 1.13 support is deprecated in Neural Network Compression Framework (NNCF)
|
||||
|
||||
* Runtime:
|
||||
|
||||
* Intel® Gaussian & Neural Accelerator (Intel® GNA) will be deprecated in a future
|
||||
release. We encourage developers to use the Neural Processing Unit (NPU) for
|
||||
low powered systems like Intel® Core™ Ultra or 14th generation and beyond.
|
||||
* OpenVINO C++/C/Python 1.0 APIs will be discontinued with 2024.0.
|
||||
* Python 3.7 support has been discontinued.
|
||||
|
||||
OpenVINO™ Development Tools
|
||||
++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
List of components and their changes:
|
||||
------------------------------------------
|
||||
|
||||
* :doc:`OpenVINO Model Converter tool <openvino_docs_model_processing_introduction>`
|
||||
now supports the original framework shape format.
|
||||
* `Neural Network Compression Framework (NNCF) <https://github.com/openvinotoolkit/nncf>`__
|
||||
|
||||
* Added data-free Int4 weight compression support for LLMs in OpenVINO IR with
|
||||
``nncf.compress_weights()``.
|
||||
* Improved quantization time of LLMs with NNCF PTQ API for ``nncf.quantize()``
|
||||
and ``nncf.quantize_with_accuracy_control()``.
|
||||
* Added support for SmoothQuant and ChannelAlighnment algorithms in NNCF HyperParameter
|
||||
Tuner for automatic optimization of their hyperparameters during quantization.
|
||||
* Added quantization support for the ``IF`` operation of models in OpenVINO format
|
||||
to speed up such models.
|
||||
* NNCF Post-training Quantization for PyTorch backend is now supported with
|
||||
``nncf.quantize()`` and the common implementation of quantization algorithms.
|
||||
* Added support for PyTorch 2.1. PyTorch 1.13 support has been deprecated.
|
||||
|
||||
OpenVINO™ Runtime (previously known as Inference Engine)
|
||||
---------------------------------------------------------
|
||||
|
||||
* OpenVINO Common
|
||||
|
||||
* Operations for reference implementations updated from legacy API to API 2.0.
|
||||
* Symbolic transformation introduced the ability to remove Reshape operations
|
||||
surrounding MatMul operations.
|
||||
|
||||
* OpenVINO Python API
|
||||
|
||||
* Better support for the ``openvino.properties`` submodule, which now allows the use
|
||||
of properties directly, without additional parenthesis. Example use-case:
|
||||
``{openvino.properties.cache_dir: “./some_path/”}``.
|
||||
* Added missing properties: ``execution_devices`` and ``loaded_from_cache``.
|
||||
* Improved error propagation on imports from OpenVINO package.
|
||||
|
||||
* AUTO device plug-in (AUTO)
|
||||
|
||||
* o Provided additional option to improve performance of cumulative throughput
|
||||
(or MULTI), where part of CPU resources can be reserved for GPU inference
|
||||
when GPU and CPU are both used for inference (using ``ov::hint::enable_cpu_pinning(true)``).
|
||||
This avoids the performance issue of CPU resource contention where there
|
||||
is not enough CPU resources to schedule tasks for GPU
|
||||
(`PR #19214 <https://github.com/openvinotoolkit/openvino/pull/19214>`__).
|
||||
|
||||
* CPU
|
||||
|
||||
* Introduced support of GPTQ quantized Int4 models, with improved performance
|
||||
compared to Int8 weight-compressed or FP16 models. In the CPU plugin,
|
||||
the gain in performance is achieved by FullyConnected acceleration with
|
||||
4bit weight decompression
|
||||
(`PR #20607 <https://github.com/openvinotoolkit/openvino/pull/20607>`__).
|
||||
* Improved performance of Int8 weight-compressed large language models on
|
||||
some platforms, such as 13th Gen Intel Core
|
||||
(`PR #20607 <https://github.com/openvinotoolkit/openvino/pull/20607>`__).
|
||||
* Further reduced memory consumption of select large language models on
|
||||
CPU platforms with AMX and AVX512 ISA, by eliminating extra memory copy
|
||||
with a unified weight layout
|
||||
(`PR #19575 <https://github.com/openvinotoolkit/openvino/pull/19575>`__).
|
||||
|
||||
* Fixed performance issue observed in 2023.1 release on select Xeon CPU
|
||||
platform with improved thread workload partitioning matching L2 cache
|
||||
utilization
|
||||
(`PR #20436 <https://github.com/openvinotoolkit/openvino/pull/20436>`__).
|
||||
* Extended support of configuration (enable_cpu_pinning) on Windows
|
||||
platforms to allow fine-grain control on CPU resource used for inference
|
||||
workload, by binding inference thread to CPU cores
|
||||
(`PR #19418 <https://github.com/openvinotoolkit/openvino/pull/19418>`__).
|
||||
* Optimized YoloV8n and YoloV8s model performance for BF16/FP32 precision.
|
||||
* Optimized Falcon model on 4th Gen Intel® Xeon® Scalable Processors.
|
||||
* Enabled support for FP16 inference precision on ARM.
|
||||
|
||||
* GPU
|
||||
|
||||
* Enhanced inference performance for Large Language Models.
|
||||
* Introduced int8 weight compression to boost LLM performance.
|
||||
(`PR #19548 <https://github.com/openvinotoolkit/openvino/pull/19548>`__).
|
||||
* Implemented Int4 GPTQ weight compression for improved LLM performance.
|
||||
* Optimized constant weights for LLMs, resulting in better memory usage
|
||||
and faster model loading.
|
||||
* Optimized gemm (general matrix multiply) and fc (fully connected) for
|
||||
enhanced performance on iGPU.
|
||||
(`PR #19780 <https://github.com/openvinotoolkit/openvino/pull/19780>`__).
|
||||
* Completed GPU plugin migration to API 2.0.
|
||||
* Added support for oneDNN 3.3 version.
|
||||
|
||||
* Model Import Updates
|
||||
|
||||
* TensorFlow Framework Support
|
||||
|
||||
* Supported conversion of models from memory in keras.Model and tf.function formats.
|
||||
`PR #19903 <https://github.com/openvinotoolkit/openvino/pull/19903>`__
|
||||
* Supported TF 2.14.
|
||||
`PR #20385 <https://github.com/openvinotoolkit/openvino/pull/20385>`__
|
||||
|
||||
* PyTorch Framework Support
|
||||
|
||||
* Supported Int4 GPTQ models.
|
||||
* New operations supported.
|
||||
|
||||
* ONNX Framework Support
|
||||
|
||||
* Added support for ONNX version 1.14.1
|
||||
(`PR #18359 <https://github.com/openvinotoolkit/openvino/pull/18359>`__)
|
||||
|
||||
|
||||
OpenVINO Ecosystem
|
||||
+++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
OpenVINO Model Server
|
||||
--------------------------
|
||||
|
||||
Introduced an extension of the KServe gRPC API, enabling streaming input and
|
||||
output for servables with Mediapipe graphs. This extension ensures the persistence
|
||||
of Mediapipe graphs within a user session, improving processing performance.
|
||||
This enhancement supports stateful graphs, such as tracking algorithms, and
|
||||
enables the use of source calculators.
|
||||
(`see additional documentation <https://github.com/openvinotoolkit/model_server/blob/main/docs/streaming_endpoints.md>`__)
|
||||
|
||||
* Mediapipe framework has been updated to the version 0.10.3.
|
||||
* model_api used in the openvino inference Mediapipe calculator has been updated
|
||||
and included with all its features.
|
||||
* Added a demo showcasing gRPC streaming with Mediapipe graph.
|
||||
(`see here <https://github.com/openvinotoolkit/model_server/tree/main/demos/mediapipe/holistic_tracking>`__)
|
||||
* Added parameters for gRPC quota configuration and changed default gRPC channel
|
||||
arguments to add rate limits. It will minimize the risks of impact of the service
|
||||
from uncontrolled flow of requests.
|
||||
* Updated python clients requirements to match wide range of python versions from 3.6 to 3.11
|
||||
|
||||
Learn more about the changes in https://github.com/openvinotoolkit/model_server/releases
|
||||
|
||||
Jupyter Notebook Tutorials
|
||||
-----------------------------
|
||||
|
||||
* The following notebooks have been updated or newly added:
|
||||
|
||||
* `LaBSE <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/220-cross-lingual-books-alignment>`__
|
||||
Cross-lingual Books Alignment With Transformers
|
||||
* `LLM chatbot <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/254-llm-chatbot>`__
|
||||
Create LLM-powered Chatbot
|
||||
|
||||
* Updated to include Int4 weight compression and Zephyr 7B model
|
||||
|
||||
* `Bark Text-to-Speech <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/256-bark-text-to-audio>`__
|
||||
Text-to-Speech generation using Bark
|
||||
* `LLaVA Multimodal Chatbot <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/257-llava-multimodal-chatbot>`__
|
||||
Visual-language assistant with LLaVA
|
||||
* `BLIP-Diffusion - Subject-Driven Generation <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/258-blip-diffusion-subject-generation>`__
|
||||
Subject-driven image generation and editing using BLIP Diffusion
|
||||
* `DeciDiffusion <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/259-decidiffusion-image-generation>`__
|
||||
Image generation with DeciDiffusion
|
||||
* `Fast Segment Anything <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/261-fast-segment-anything>`__
|
||||
Object segmentations with FastSAM
|
||||
* `SoftVC VITS Singing Voice Conversion <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/262-softvc-voice-conversion>`__
|
||||
* `QR Code Monster <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/264-qrcode-monster>`__
|
||||
Generate creative QR codes with ControlNet QR Code Monster
|
||||
* `Würstchen <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/265-wuerstchen-image-generation>`__
|
||||
Text-to-image generation with Würstchen
|
||||
* `Distil-Whisper <https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/267-distil-whisper-asr>`__
|
||||
Automatic speech recognition using Distil-Whisper and OpenVINO™
|
||||
|
||||
|
||||
* Added optimization support (8-bit quantization, weight compression)
|
||||
by NNCF for the following notebooks:
|
||||
|
||||
* `Image generation with DeepFloyd IF <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/238-deepfloyd-if>`__
|
||||
* `Instruction following using Databricks Dolly 2.0 <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/240-dolly-2-instruction-following>`__
|
||||
* `Visual Question Answering and Image Captioning using BLIP <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/233-blip-visual-language-processing>`__
|
||||
* `Grammatical Error Correction <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/214-grammar-correction>`__
|
||||
* `Universal segmentation with OneFormer <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/249-oneformer-segmentation>`__
|
||||
* `Visual-language assistant with LLaVA and OpenVINO <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/257-llava-multimodal-chatbot>`__
|
||||
* `Image editing with InstructPix2Pix <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/231-instruct-pix2pix-image-editing>`__
|
||||
* `MMS: Scaling Speech Technology to 1000+ languages <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/255-mms-massively-multilingual-speech>`__
|
||||
* `Image generation with Latent Consistency Model <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/263-latent-consistency-models-image-generation>`__
|
||||
* `Object segmentations with FastSAM <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/261-fast-segment-anything>`__
|
||||
* `Automatic speech recognition using Distil-Whisper <https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/267-distil-whisper-asr>`__
|
||||
|
||||
|
||||
|
||||
Known issues
|
||||
++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
| **ID - 118179**
|
||||
| *Component* - Python API, Plugins
|
||||
| *Description:*
|
||||
| When input byte sizes are matching, inference methods accept incorrect inputs
|
||||
in copy mode (share_inputs=False). Example: [1, 4, 512, 512] is allowed when
|
||||
[1, 512, 512, 4] is required by the model.
|
||||
| *Workaround:*
|
||||
| Pass inputs which shape and layout match model ones.
|
||||
|
||||
| **ID - 124181**
|
||||
| *Component* - CPU plugin
|
||||
| *Description:*
|
||||
| On CPU platform with L2 cache size less than 256KB, such as i3 series of 8th
|
||||
Gen Intel CORE platforms, some models may hang during model loading.
|
||||
| *Workaround:*
|
||||
| Rebuild the software from OpenVINO master or use the next OpenVINO release.
|
||||
|
||||
| **ID - 121959**
|
||||
| *Component* - CPU plugin
|
||||
| *Description:*
|
||||
| During inference using latency hint on selected hybrid CPU platforms
|
||||
(such as 12th or 13th Gen Intel CORE), there is a sporadic occurrence of
|
||||
increased latency caused by the operating system scheduling of P-cores or
|
||||
E-cores during OpenVINO initialization.
|
||||
| *Workaround:*
|
||||
| This will be fixed in the next OpenVINO release.
|
||||
|
||||
| **ID - 123101**
|
||||
| *Component* - GPU plugin
|
||||
| *Description:*
|
||||
| Hung up of GPU plugin on A770 Graphics (dGPU) in case of
|
||||
large batch size (1750).
|
||||
| *Workaround:*
|
||||
| Decrease the batch size, wait for fixed driver released.
|
||||
|
||||
Included in This Release
|
||||
+++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
The Intel® Distribution of OpenVINO™ toolkit is available for downloading in
|
||||
three types of operating systems: Windows, Linux, and macOS.
|
||||
|
||||
+--------------------------------------------------------------------+-----------------------------------------------------------+-------------------------------------------------+
|
||||
|| Component || License | Location |
|
||||
+================================+===================================+=================+=================+=======================+=================================================+
|
||||
|| OpenVINO (Inference Engine) C++ Runtime || Dual licensing: || <install_root>/runtime/* |
|
||||
|| Unified API to integrate the inference with application logic || Intel® OpenVINO™ Distribution License (Version May 2021) || <install_root>/runtime/include/* |
|
||||
|| OpenVINO (Inference Engine) Headers || Apache 2.0 || |
|
||||
+--------------------------------------------------------------------+-----------------------------------------------------------+-------------------------------------------------+
|
||||
|| OpenVINO (Inference Engine) Pythion API || Apache 2.0 || <install_root>/python/* |
|
||||
+--------------------------------------------------------------------+-----------------------------------------------------------+-------------------------------------------------+
|
||||
|| OpenVINO (Inference Engine) Samples || Apache 2.0 || <install_root>/samples/* |
|
||||
|| Samples that illustrate OpenVINO C++/ Python API usage || || |
|
||||
+--------------------------------------------------------------------+-----------------------------------------------------------+-------------------------------------------------+
|
||||
|| [Deprecated] Deployment manager || Apache 2.0 || <install_root>/tools/deployment_manager/* |
|
||||
|| The Deployment Manager is a Python* command-line tool that || || |
|
||||
|| creates a deployment package by assembling the model, IR files, || || |
|
||||
|| your application, and associated dependencies into a runtime || || |
|
||||
|| package for your target device. || || |
|
||||
+--------------------------------------------------------------------+-----------------------------------------------------------+-------------------------------------------------+
|
||||
|
||||
|
||||
Legal Information
|
||||
+++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
You may not use or facilitate the use of this document in connection with any infringement
|
||||
or other legal analysis concerning Intel products described herein.
|
||||
|
||||
You agree to grant Intel a non-exclusive, royalty-free license to any patent claim
|
||||
thereafter drafted which includes subject matter disclosed herein.
|
||||
|
||||
No license (express or implied, by estoppel or otherwise) to any intellectual property
|
||||
rights is granted by this document.
|
||||
|
||||
All information provided here is subject to change without notice. Contact your Intel
|
||||
representative to obtain the latest Intel product specifications and roadmaps.
|
||||
|
||||
The products described may contain design defects or errors known as errata which may
|
||||
cause the product to deviate from published specifications. Current characterized errata
|
||||
are available on request.
|
||||
|
||||
Intel technologies' features and benefits depend on system configuration and may require
|
||||
enabled hardware, software or service activation. Learn more at
|
||||
`http://www.intel.com/ <http://www.intel.com/>`__
|
||||
or from the OEM or retailer.
|
||||
|
||||
No computer system can be absolutely secure.
|
||||
|
||||
Intel, Atom, Arria, Core, Movidius, Xeon, OpenVINO, and the Intel logo are trademarks
|
||||
of Intel Corporation in the U.S. and/or other countries.
|
||||
|
||||
OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos
|
||||
|
||||
Other names and brands may be claimed as the property of others.
|
||||
|
||||
Copyright © 2023, Intel Corporation. All rights reserved.
|
||||
|
||||
For more complete information about compiler optimizations, see our Optimization Notice.
|
||||
|
||||
Performance varies by use, configuration and other factors. Learn more at
|
||||
`www.Intel.com/PerformanceIndex <www.Intel.com/PerformanceIndex>`__.
|
||||
|
||||
Download
|
||||
+++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
`The OpenVINO product selector tool <https://docs.openvino.ai/install>`__
|
||||
provides easy access to the right packages that match your desired OS, version,
|
||||
and distribution options.
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,151 +0,0 @@
|
||||
# System Requirements {#system_requirements}
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
|
||||
Certain hardware (including but not limited to GPU and GNA) requires manual
|
||||
installation of specific drivers to work correctly. The drivers may also require
|
||||
updates to the operating system, including Linux kernel. These updates need to
|
||||
be handled by the user and are not part of OpenVINO installation. Refer to your
|
||||
system's documentation for updating instructions.
|
||||
|
||||
|
||||
Intel CPU processors
|
||||
#####################
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Supported Hardware
|
||||
|
||||
* Intel Atom® processor with Intel® SSE4.2 support
|
||||
* Intel® Pentium® processor N4200/5, N3350/5, N3450/5 with Intel® HD Graphics
|
||||
* 6th - 13th generation Intel® Core™ processors
|
||||
* Intel® Xeon® Scalable Processors (code name Skylake)
|
||||
* 2nd Generation Intel® Xeon® Scalable Processors (code name Cascade Lake)
|
||||
* 3rd Generation Intel® Xeon® Scalable Processors (code name Cooper Lake and Ice Lake)
|
||||
* 4th Generation Intel® Xeon® Scalable Processors (code name Sapphire Rapids)
|
||||
|
||||
.. tab-item:: Required Operating Systems
|
||||
|
||||
* Ubuntu 22.04 long-term support (LTS), 64-bit (Kernel 5.15+)
|
||||
* Ubuntu 20.04 long-term support (LTS), 64-bit (Kernel 5.15+)
|
||||
* Ubuntu 18.04 long-term support (LTS) with limitations, 64-bit (Kernel 5.4+)
|
||||
* Windows* 10
|
||||
* Windows* 11
|
||||
* macOS* 10.15 and above, 64-bit
|
||||
* Red Hat Enterprise Linux* 8, 64-bit
|
||||
|
||||
Intel® Processor Graphics
|
||||
###########################################
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Supported Hardware
|
||||
|
||||
* Intel® HD Graphics
|
||||
* Intel® UHD Graphics
|
||||
* Intel® Iris® Pro Graphics
|
||||
* Intel® Iris® Xe Graphics
|
||||
* Intel® Iris® Xe Max Graphics
|
||||
* Intel® Arc ™ GPU Series
|
||||
* Intel® Data Center GPU Flex Series
|
||||
|
||||
.. tab-item:: Required Operating Systems
|
||||
|
||||
* Ubuntu* 22.04 long-term support (LTS), 64-bit
|
||||
* Ubuntu* 20.04 long-term support (LTS), 64-bit
|
||||
* Windows* 10, 64-bit
|
||||
* Windows* 11, 64-bit
|
||||
* Red Hat Enterprise Linux* 8, 64-bit
|
||||
|
||||
.. note::
|
||||
|
||||
| Using a GPU requires installing drivers that are not included in the Intel® Distribution of OpenVINO™ toolkit.
|
||||
| Not all Intel CPUs include the integrated graphics processor. See `Product Specifications <https://ark.intel.com/>`__
|
||||
for information about your processor.
|
||||
| Although this release works with Ubuntu 20.04 for discrete graphic cards, the support is limited
|
||||
due to discrete graphics drivers.
|
||||
| Recommended `OpenCL™ driver <https://github.com/intel/compute-runtime>`__ versions:
|
||||
22.43 for Ubuntu 22.04, 22.41 for Ubuntu 20.04 and 22.28 for Red Hat Enterprise Linux 8
|
||||
|
||||
|
||||
Intel® Gaussian & Neural Accelerator
|
||||
###########################################
|
||||
|
||||
Operating Systems:
|
||||
|
||||
Ubuntu* 22.04 long-term support (LTS), 64-bit
|
||||
Ubuntu* 20.04 long-term support (LTS), 64-bit
|
||||
Windows* 10, 64-bit
|
||||
Windows* 11, 64-bit
|
||||
|
||||
|
||||
Operating system and developer environment requirements
|
||||
############################################################
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Linux OS
|
||||
|
||||
* Ubuntu 22.04 with Linux kernel 5.15+
|
||||
* Ubuntu 20.04 with Linux kernel 5.15+
|
||||
* RHEL 8 with Linux kernel 5.4
|
||||
|
||||
A Linux OS build environment requires:
|
||||
|
||||
* Python* 3.7-3.11
|
||||
* `Intel® HD Graphics Driver <https://downloadcenter.intel.com/product/80939/Graphics-Drivers>`__
|
||||
for inference on a GPU.
|
||||
|
||||
GNU Compiler Collection and CMake are needed for building from source:
|
||||
|
||||
* `GNU Compiler Collection (GCC) <https://www.gnu.org/software/gcc/>`__
|
||||
8.4 (RHEL 8) 9.3 (Ubuntu 20)
|
||||
* `CMake <https://cmake.org/download/>`__ 3.10 or higher
|
||||
|
||||
To support CPU, GPU, GNA, or hybrid-core CPU capabilities, higher versions of kernel
|
||||
might be required for 10th Gen Intel® Core™ Processor,
|
||||
11th Gen Intel® Core™ Processors, 11th Gen Intel® Core™ Processors S-Series Processors,
|
||||
12th Gen Intel® Core™ Processors, 13th Gen Intel® Core™ Processors, or 4th Gen
|
||||
Intel® Xeon® Scalable Processors.
|
||||
|
||||
.. tab-item:: Windows* 10 and 11
|
||||
|
||||
A Windows OS build environment requires:
|
||||
|
||||
* `Microsoft Visual Studio 2019 <https://visualstudio.microsoft.com/vs/older-downloads/>`__
|
||||
* `CMake <https://cmake.org/download/>`__ 3.14 or higher
|
||||
* `Python 3.7-3.11 <http://www.python.org/downloads/>`__
|
||||
* `Intel® HD Graphics Driver <https://downloadcenter.intel.com/product/80939/Graphics-Drivers>`__ for inference on a GPU.
|
||||
|
||||
.. tab-item:: macOS* 10.15 and above
|
||||
|
||||
A macOS build environment requires:
|
||||
|
||||
* `Xcode 10.3 <https://developer.apple.com/xcode/>`__
|
||||
* `Python 3.7-3.11 <http://www.python.org/downloads/>`__
|
||||
* `CMake 3.13 or higher <https://cmake.org/download/>`__
|
||||
|
||||
.. tab-item:: DL framework versions
|
||||
|
||||
* TensorFlow 1.15, 2.12
|
||||
* MxNet 1.9
|
||||
* ONNX 1.13
|
||||
* PaddlePaddle* 2.4
|
||||
|
||||
Other DL Framework versions may be compatible with the current OpenVINO
|
||||
release, but only the versions listed here are fully validated.
|
||||
|
||||
|
||||
.. note::
|
||||
|
||||
OpenVINO Python binaries and binaries on Windows/CentOS7/MACOS(x86) are built
|
||||
with oneTBB libraries. Other binaries on Ubuntu and Redhat OSes are built with
|
||||
legacy TBB which is released by OS distribution. OpenVINO can be built with
|
||||
either oneTBB or legacy TBB by the user on all OS systems listed. System
|
||||
compatibility and performance are improved on Hybrid CPUs,
|
||||
such as 12th Gen Intel Core and above.
|
||||
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
226
docs/articles_en/about_openvino/system_requirements.rst
Normal file
226
docs/articles_en/about_openvino/system_requirements.rst
Normal file
@@ -0,0 +1,226 @@
|
||||
.. {#system_requirements}
|
||||
|
||||
System Requirements
|
||||
===================
|
||||
|
||||
|
||||
|
||||
Certain hardware requires specific drivers to work properly with OpenVINO.
|
||||
These drivers, including Linux* kernels, might require updates to your operating system,
|
||||
which is not part of OpenVINO installation. Refer to your hardware's documentation
|
||||
for updating instructions.
|
||||
|
||||
|
||||
CPU
|
||||
##########
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Supported Hardware
|
||||
|
||||
* Intel Atom® processor with Intel® SSE4.2 support
|
||||
* Intel® Pentium® processor N4200/5, N3350/5, N3450/5 with Intel® HD Graphics
|
||||
* 6th - 13th generation Intel® Core™ processors
|
||||
* Intel® Core™ Ultra (codename Meteor Lake)
|
||||
* Intel® Xeon® Scalable Processors (code name Skylake)
|
||||
* 2nd Generation Intel® Xeon® Scalable Processors (code name Cascade Lake)
|
||||
* 3rd Generation Intel® Xeon® Scalable Processors (code name Cooper Lake and Ice Lake)
|
||||
* 4th Generation Intel® Xeon® Scalable Processors (code name Sapphire Rapids)
|
||||
* ARM* and ARM64 CPUs; Apple M1, M2 and Raspberry Pi
|
||||
|
||||
.. tab-item:: Supported Operating Systems
|
||||
|
||||
* Ubuntu 22.04 long-term support (LTS), 64-bit (Kernel 5.15+)
|
||||
* Ubuntu 20.04 long-term support (LTS), 64-bit (Kernel 5.15+)
|
||||
* Ubuntu 18.04 long-term support (LTS) with limitations, 64-bit (Kernel 5.4+)
|
||||
* Windows* 10
|
||||
* Windows* 11
|
||||
* macOS* 10.15 and above, 64-bit
|
||||
* macOS 11 and above, ARM64
|
||||
* Red Hat Enterprise Linux* 8, 64-bit
|
||||
* Debian 9 ARM64 and ARM
|
||||
* CentOS 7 64-bit
|
||||
|
||||
GPU
|
||||
##########
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Supported Hardware
|
||||
|
||||
* Intel® HD Graphics
|
||||
* Intel® UHD Graphics
|
||||
* Intel® Iris® Pro Graphics
|
||||
* Intel® Iris® Xe Graphics
|
||||
* Intel® Iris® Xe Max Graphics
|
||||
* Intel® Arc ™ GPU Series
|
||||
* Intel® Data Center GPU Flex Series
|
||||
* Intel® Data Center GPU Max Series
|
||||
|
||||
.. tab-item:: Supported Operating Systems
|
||||
|
||||
* Ubuntu 22.04 long-term support (LTS), 64-bit
|
||||
* Ubuntu 20.04 long-term support (LTS), 64-bit
|
||||
* Windows 10, 64-bit
|
||||
* Windows 11, 64-bit
|
||||
* Centos 7
|
||||
* Red Hat Enterprise Linux 8, 64-bit
|
||||
|
||||
.. tab-item:: Additional considerations
|
||||
|
||||
* The use of of GPU requires drivers that are not included in the Intel®
|
||||
Distribution of OpenVINO™ toolkit package.
|
||||
* A chipset that supports processor graphics is required for Intel® Xeon®
|
||||
processors. Processor graphics are not included in all processors. See
|
||||
`Product Specifications <https://ark.intel.com/>`__
|
||||
for information about your processor.
|
||||
* Although this release works with Ubuntu 20.04 for discrete graphic cards,
|
||||
Ubuntu 20.04 is not POR for discrete graphics drivers, so OpenVINO support
|
||||
is limited.
|
||||
* The following minimum (i.e., used for old hardware) OpenCL™ driver's versions
|
||||
were used during OpenVINO internal validation: 22.43 for Ubuntu 22.04, 21.48
|
||||
for Ubuntu 20.04 and 21.49 for Red Hat Enterprise Linux 8.
|
||||
|
||||
NPU and GNA
|
||||
#############################
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Operating Systems for NPU
|
||||
|
||||
* Ubuntu 22.04 long-term support (LTS), 64-bit
|
||||
* Windows 11, 64-bit
|
||||
|
||||
.. tab-item:: Operating Systems for GNA
|
||||
|
||||
* Ubuntu 22.04 long-term support (LTS), 64-bit
|
||||
* Ubuntu 20.04 long-term support (LTS), 64-bit
|
||||
* Windows 10, 64-bit
|
||||
* Windows 11, 64-bit
|
||||
|
||||
.. tab-item:: Additional considerations
|
||||
|
||||
* These Accelerators require drivers that are not included in the
|
||||
Intel® Distribution of OpenVINO™ toolkit package.
|
||||
* Users can access the NPU plugin through the OpenVINO archives on
|
||||
the download page.
|
||||
|
||||
|
||||
Operating systems and developer environment
|
||||
#######################################################
|
||||
|
||||
.. tab-set::
|
||||
|
||||
.. tab-item:: Linux
|
||||
|
||||
* Ubuntu 22.04 with Linux kernel 5.15+
|
||||
* Ubuntu 20.04 with Linux kernel 5.15+
|
||||
* Red Hat Enterprise Linux 8 with Linux kernel 5.4
|
||||
|
||||
Build environment components:
|
||||
|
||||
* Python* 3.8-3.11
|
||||
* `Intel® HD Graphics Driver <https://downloadcenter.intel.com/product/80939/Graphics-Drivers>`__
|
||||
required for inference on GPU
|
||||
* GNU Compiler Collection and CMake are needed for building from source:
|
||||
|
||||
* `GNU Compiler Collection (GCC) <https://www.gnu.org/software/gcc/>`__ 7.5 and above
|
||||
* `CMake <https://cmake.org/download/>`__ 3.10 or higher
|
||||
|
||||
Higher versions of kernel might be required for 10th Gen Intel® Core™ Processors,
|
||||
11th Gen Intel® Core™ Processors, 11th Gen Intel® Core™ Processors S-Series Processors,
|
||||
12th Gen Intel® Core™ Processors, 13th Gen Intel® Core™ Processors, Intel® Core™ Ultra
|
||||
Processors, or 4th Gen Intel® Xeon® Scalable Processors to support CPU, GPU, GNA or
|
||||
hybrid-cores CPU capabilities.
|
||||
|
||||
.. tab-item:: Windows
|
||||
|
||||
* Windows 10
|
||||
* Windows 11
|
||||
|
||||
Build environment components:
|
||||
|
||||
* `Microsoft Visual Studio 2019 <https://visualstudio.microsoft.com/vs/older-downloads/>`__
|
||||
* `CMake <https://cmake.org/download/>`__ 3.10 or higher
|
||||
* `Python* 3.8-3.11 <http://www.python.org/downloads/>`__
|
||||
* `Intel® HD Graphics Driver <https://downloadcenter.intel.com/product/80939/Graphics-Drivers>`__
|
||||
required for inference on GPU
|
||||
|
||||
.. tab-item:: macOS
|
||||
|
||||
* macOS 10.15 and above
|
||||
|
||||
Build environment components:
|
||||
|
||||
* `Xcode* 10.3 <https://developer.apple.com/xcode/>`__
|
||||
* `Python* 3.8-3.11 <http://www.python.org/downloads/>`__
|
||||
* `CMake <https://cmake.org/download/>`__ 3.10 or higher
|
||||
|
||||
.. tab-item:: DL frameworks versions:
|
||||
|
||||
* TensorFlow* 1.15, 2.12
|
||||
* MxNet* 1.9.0
|
||||
* ONNX* 1.14.1
|
||||
* PaddlePaddle* 2.4
|
||||
|
||||
This package can be installed on other versions of DL Framework
|
||||
but only the version specified here is fully validated.
|
||||
|
||||
|
||||
.. note::
|
||||
|
||||
OpenVINO Python binaries and binaries on Windows/CentOS7/MACOS(x86) are built
|
||||
with oneTBB libraries. Other binaries on Ubuntu and Redhat OSes are built with
|
||||
legacy TBB which is released by OS distribution. OpenVINO can be built with
|
||||
either oneTBB or legacy TBB by the user on all OS systems listed. System
|
||||
compatibility and performance are improved on Hybrid CPUs,
|
||||
such as 12th Gen Intel Core and above.
|
||||
|
||||
|
||||
|
||||
Legal Information
|
||||
+++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
You may not use or facilitate the use of this document in connection with any infringement
|
||||
or other legal analysis concerning Intel products described herein.
|
||||
|
||||
You agree to grant Intel a non-exclusive, royalty-free license to any patent claim
|
||||
thereafter drafted which includes subject matter disclosed herein.
|
||||
|
||||
No license (express or implied, by estoppel or otherwise) to any intellectual property
|
||||
rights is granted by this document.
|
||||
|
||||
All information provided here is subject to change without notice. Contact your Intel
|
||||
representative to obtain the latest Intel product specifications and roadmaps.
|
||||
|
||||
The products described may contain design defects or errors known as errata which may
|
||||
cause the product to deviate from published specifications. Current characterized errata
|
||||
are available on request.
|
||||
|
||||
Intel technologies' features and benefits depend on system configuration and may require
|
||||
enabled hardware, software or service activation. Learn more at
|
||||
`http://www.intel.com/ <http://www.intel.com/>`__
|
||||
or from the OEM or retailer.
|
||||
|
||||
No computer system can be absolutely secure.
|
||||
|
||||
Intel, Atom, Arria, Core, Movidius, Xeon, OpenVINO, and the Intel logo are trademarks
|
||||
of Intel Corporation in the U.S. and/or other countries.
|
||||
|
||||
OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos
|
||||
|
||||
Other names and brands may be claimed as the property of others.
|
||||
|
||||
Copyright © 2023, Intel Corporation. All rights reserved.
|
||||
|
||||
For more complete information about compiler optimizations, see our Optimization Notice.
|
||||
|
||||
Performance varies by use, configuration and other factors. Learn more at
|
||||
`www.Intel.com/PerformanceIndex <www.Intel.com/PerformanceIndex>`__.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Documentation {#documentation}
|
||||
.. {#documentation}
|
||||
|
||||
Documentation
|
||||
=============
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Explore the OpenVINO toolkit workflow that entails preparing,
|
||||
@@ -33,4 +35,3 @@ This section provides reference documents that guide you through the OpenVINO to
|
||||
| :doc:`OpenVINO™ Security <openvino_docs_security_guide_introduction>`
|
||||
| Learn how to use OpenVINO securely and protect your data to meet specific security and privacy requirements.
|
||||
|
||||
@endsphinxdirective
|
||||
@@ -1,6 +1,8 @@
|
||||
# OpenVINO™ Ecosystem Overview {#openvino_ecosystem}
|
||||
.. {#openvino_ecosystem}
|
||||
|
||||
OpenVINO™ Ecosystem Overview
|
||||
==============================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: OpenVINO™ ecosystem offers various resources for developing deep learning solutions.
|
||||
@@ -62,5 +64,4 @@ More resources:
|
||||
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Datumaro {#datumaro_documentation}
|
||||
.. {#datumaro_documentation}
|
||||
|
||||
Datumaro
|
||||
========
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Start working with Datumaro, which offers functionalities for basic data
|
||||
@@ -72,5 +74,4 @@ Python Hands-on Examples
|
||||
* `Deep learning end-to-end use-cases <https://openvinotoolkit.github.io/datumaro/stable/docs/jupyter_notebook_examples/e2e_example.html>`__
|
||||
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# OpenVINO™ Training Extensions {#ote_documentation}
|
||||
.. {#ote_documentation}
|
||||
|
||||
OpenVINO™ Training Extensions
|
||||
===============================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: OpenVINO™ Training Extensions include advanced algorithms used
|
||||
@@ -42,6 +44,5 @@ Tutorials
|
||||
* `Base tutorial <https://openvinotoolkit.github.io/training_extensions/stable/guide/tutorials/base/index.html>`__
|
||||
* `Advanced tutorial <https://openvinotoolkit.github.io/training_extensions/stable/guide/tutorials/advanced/index.html>`__
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# OpenVINO™ Security Add-on {#ovsa_get_started}
|
||||
.. {#ovsa_get_started}
|
||||
|
||||
OpenVINO™ Security Add-on
|
||||
===========================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Learn how to setup hardware and virtual machines to use the OpenVINO™ Security Add-on to access and run access controlled models.
|
||||
@@ -1053,5 +1055,4 @@ Use these links for more information:
|
||||
- `OpenVINO Model Server Quick Start Guide <https://github.com/openvinotoolkit/model_server/blob/main/docs/ovms_quickstart.md>`__
|
||||
- `Model repository <https://github.com/openvinotoolkit/model_server/blob/main/docs/models_repository.md>`__
|
||||
|
||||
@endsphinxdirective
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# OpenVINO Extensibility Mechanism {#openvino_docs_Extensibility_UG_Intro}
|
||||
.. {#openvino_docs_Extensibility_UG_Intro}
|
||||
|
||||
OpenVINO Extensibility Mechanism
|
||||
================================
|
||||
|
||||
@sphinxdirective
|
||||
|
||||
.. meta::
|
||||
:description: Explore OpenVINO™ Extensibility API, which allows adding
|
||||
@@ -194,4 +196,3 @@ See Also
|
||||
* :doc:`Using OpenVINO Runtime Samples <openvino_docs_OV_UG_Samples_Overview>`
|
||||
* :doc:`Hello Shape Infer SSD sample <openvino_inference_engine_samples_hello_reshape_ssd_README>`
|
||||
|
||||
@endsphinxdirective
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user