<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ydb/library/python/runtime_py3/ya.make, branch CLI_2.19.0</title>
<subtitle>Mirror of YDB github repos</subtitle>
<id>https://code.mastervirt.ru/ydb/atom?h=CLI_2.19.0</id>
<link rel='self' href='https://code.mastervirt.ru/ydb/atom?h=CLI_2.19.0'/>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/'/>
<updated>2025-01-16T19:26:51Z</updated>
<entry>
<title>Prototype - external python files mode for tests</title>
<updated>2025-01-16T19:26:51Z</updated>
<author>
<name>prettyboy</name>
<email>prettyboy@yandex-team.com</email>
</author>
<published>2025-01-16T18:01:45Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=2f3fd95aac24e27a3b0aa2badda49db82bf36cc5'/>
<id>urn:sha1:2f3fd95aac24e27a3b0aa2badda49db82bf36cc5</id>
<content type='text'>
Режим позволяет перезапускать python тесты или интеграционные тесты на питон программы при внесении изменений в python файлы без перекомпиляции.

Сценарий:
- прогнали тесты
- внесли изменение в `library/python/func/__init__.py`
- перезапустили, смотрим на времена

На примере интеграционного devtools/ya/handlers/analyze_make/tests в codenv (base конфигурация).

#|
||
ya m -rA
|
ya m -rA --ext-py
||
||
real    10m25,928s
user    0m53,465s
sys     1m14,791s

```
Total time by type:
[935171 ms] [LD] [count: 3, ave time 311723.67 msec]
[ 13657 ms] [prepare:AC] [count: 4, ave time 3414.25 msec]
[ 10436 ms] [TM] [count: 1, ave time 10436.00 msec]
[ 10387 ms] [prepare:get from local cache] [count: 1521, ave time 6.83 msec]
[  6480 ms] [TS] [count: 1, ave time 6480.00 msec]
[  3823 ms] [prepare:put into local cache, clean build dir] [count: 7, ave time 546.14 msec]
[  2279 ms] [CC] [count: 1, ave time 2279.00 msec]
[  1251 ms] [PY] [count: 1, ave time 1251.00 msec]
[   372 ms] [prepare:yt-store] [count: 2, ave time 186.00 msec]
[   154 ms] [AR] [count: 1, ave time 154.00 msec]
...
```

|

real    0m22,094s
user    0m26,372s
sys     0m3,363s

```
Total time by type:
[13140 ms] [TM] [count: 1, ave time 13140.00 msec]
[  351 ms] [prepare:yt-store] [count: 1, ave time 351.00 msec]
[   81 ms] [prepare:tools] [count: 8, ave time 10.12 msec]
[   32 ms] [prepare:AC] [count: 2, ave time 16.00 msec]
[   31 ms] [prepare:get from local cache] [count: 7, ave time 4.43 msec]
[   16 ms] [prepare:clean] [count: 3, ave time 5.33 msec]
```

||
|#

В codenv в base конфигуарции (4cpu) невероятно долго идёт линковка. Тот же самый сценарий, но на mous (54cpu)

#|
||
ya m -rA
|
ya m -rA --ext-py
||
||

real    0m25,435s
user    0m40,242s
sys     0m22,434s

```
Total time by type:
[30958 ms] [prepare:get from local cache] [count: 1521, ave time 20.35 msec]
[16293 ms] [prepare:AC] [count: 4, ave time 4073.25 msec]
[11161 ms] [LD] [count: 3, ave time 3720.33 msec]
[ 4256 ms] [TM] [count: 1, ave time 4256.00 msec]
[ 3529 ms] [TS] [count: 1, ave time 3529.00 msec]
[ 1542 ms] [CC] [count: 1, ave time 1542.00 msec]
[  635 ms] [PY] [count: 1, ave time 635.00 msec]
...
```

|

real    0m18,321s
user    0m21,673s
sys     0m3,204s

```
Total time by type:
[10786 ms] [TM] [count: 1, ave time 10786.00 msec]
[ 1568 ms] [prepare:yt-store] [count: 1, ave time 1568.00 msec]
[  151 ms] [prepare:tools] [count: 8, ave time 18.88 msec]
[   61 ms] [prepare:get from local cache] [count: 7, ave time 8.71 msec]
[   48 ms] [prepare:AC] [count: 2, ave time 24.00 msec]
[   14 ms] [prepare:clean] [count: 3, ave time 4.67 msec]
```

||
|#

В новом режиме тест ожидаемо замедляется, так как все питон программы при каждом старте вынуждены читать файлы с фс (ещё через арк), а потом ещё и компилировать байткод, т.е. холодный запуск
commit_hash:24c5a46a8385d3c065abfb6fc5b40f7ad24bb1cb
</content>
</entry>
<entry>
<title>Never compress python build resources to speedup python configuration and build</title>
<updated>2024-12-13T06:07:25Z</updated>
<author>
<name>spreis</name>
<email>spreis@yandex-team.com</email>
</author>
<published>2024-12-13T05:25:28Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=e90b83df32a421a93c021eaa91710c1193585f9a'/>
<id>urn:sha1:e90b83df32a421a93c021eaa91710c1193585f9a</id>
<content type='text'>
There is no runtime perf impact, but
- The change reduces build graph by removing 2 nodes out of 5 for python which accelerates both configuration and build
- surprisingly in all experiments there were positive impact on binary size about 2MiB
commit_hash:909fdeeb91b7f20c749177d638e97d5a469e422d
</content>
</entry>
<entry>
<title>Sync contrib/tools/python3 layout with upstream</title>
<updated>2024-02-18T23:50:43Z</updated>
<author>
<name>thegeorg</name>
<email>thegeorg@yandex-team.com</email>
</author>
<published>2024-02-18T23:38:52Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=d96fa07134c06472bfee6718b5cfd1679196fc99'/>
<id>urn:sha1:d96fa07134c06472bfee6718b5cfd1679196fc99</id>
<content type='text'>
* Move src/ subdir contents to the top of the layout
* Rename self-written lib -&gt; lib2 to avoid CaseFolding warning from the VCS
* Regenerate contrib/libs/python proxy-headers accordingly
4ccc62ac1511abcf0fed14ccade38e984e088f1e
</content>
</entry>
<entry>
<title>add ydb deps</title>
<updated>2023-09-29T09:41:34Z</updated>
<author>
<name>nkozlovskiy</name>
<email>nmk@ydb.tech</email>
</author>
<published>2023-09-29T09:24:06Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=e0e3e1717e3d33762ce61950504f9637a6e669ed'/>
<id>urn:sha1:e0e3e1717e3d33762ce61950504f9637a6e669ed</id>
<content type='text'>
</content>
</entry>
<entry>
<title>intermediate changes</title>
<updated>2022-03-15T10:35:56Z</updated>
<author>
<name>arcadia-devtools</name>
<email>arcadia-devtools@yandex-team.ru</email>
</author>
<published>2022-03-15T10:35:56Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=094638589de6a6c9f91fad0005843fc1c1adc957'/>
<id>urn:sha1:094638589de6a6c9f91fad0005843fc1c1adc957</id>
<content type='text'>
ref:ca7a95e8c9a9d780f96497136a152091d54e61b5
</content>
</entry>
<entry>
<title>Restoring authorship annotation for &lt;abodrov@yandex-team.ru&gt;. Commit 2 of 2.</title>
<updated>2022-02-10T13:47:18Z</updated>
<author>
<name>abodrov</name>
<email>abodrov@yandex-team.ru</email>
</author>
<published>2022-02-10T13:47:18Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=f02a874a7290593efbe4b3aeae69a04b46c1cc86'/>
<id>urn:sha1:f02a874a7290593efbe4b3aeae69a04b46c1cc86</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Restoring authorship annotation for &lt;abodrov@yandex-team.ru&gt;. Commit 1 of 2.</title>
<updated>2022-02-10T13:47:18Z</updated>
<author>
<name>abodrov</name>
<email>abodrov@yandex-team.ru</email>
</author>
<published>2022-02-10T13:47:18Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=1b8c043abfc689b3d27384c4202b20031fc4ae31'/>
<id>urn:sha1:1b8c043abfc689b3d27384c4202b20031fc4ae31</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Restoring authorship annotation for &lt;spreis@yandex-team.ru&gt;. Commit 2 of 2.</title>
<updated>2022-02-10T13:47:13Z</updated>
<author>
<name>spreis</name>
<email>spreis@yandex-team.ru</email>
</author>
<published>2022-02-10T13:47:13Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=b49848d6e361b76904f094b7d5e10d6edea75afe'/>
<id>urn:sha1:b49848d6e361b76904f094b7d5e10d6edea75afe</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Restoring authorship annotation for &lt;spreis@yandex-team.ru&gt;. Commit 1 of 2.</title>
<updated>2022-02-10T13:47:13Z</updated>
<author>
<name>spreis</name>
<email>spreis@yandex-team.ru</email>
</author>
<published>2022-02-10T13:47:13Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=bcd1126cbd5d445cd0665d295198aa39c6ab8cbe'/>
<id>urn:sha1:bcd1126cbd5d445cd0665d295198aa39c6ab8cbe</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Restoring authorship annotation for &lt;deshevoy@yandex-team.ru&gt;. Commit 2 of 2.</title>
<updated>2022-02-10T13:46:57Z</updated>
<author>
<name>deshevoy</name>
<email>deshevoy@yandex-team.ru</email>
</author>
<published>2022-02-10T13:46:57Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=28148f76dbfcc644d96427d41c92f36cbf2fdc6e'/>
<id>urn:sha1:28148f76dbfcc644d96427d41c92f36cbf2fdc6e</id>
<content type='text'>
</content>
</entry>
</feed>
