| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
[nodiff:caesar]
commit_hash:48312ddf31d7bece9b834e38fc4e91254815a4d0
|
|
|
|
| |
commit_hash:8b3bb826b17db8329ed1221f545c0645f12c552d
|
|
|
|
|
|
|
| |
Cython is not yet subinterpreter compatible. There are no ETA when cython is going to support subinterpreters.
This PR removes cython from hermetic python imoprt hooks in order to make them subinterpretr-compatible.
commit_hash:427b6f9db6afa6695659ee147621e1ccb391d3cb
|
|
|
|
| |
commit_hash:4d256df3cba483ed480b07058d40dc2771082b86
|
|
|
|
| |
commit_hash:1d9f5675b9d3ddaa44db4472376a06ad3e811e2d
|
|
|
|
| |
commit_hash:be217f23d1ceb4ff6d340cac1d99f9e803c762e7
|
|
|
|
|
|
|
| |
Cython is not yet subinterpreter compatible. There are no ETA when cython is going to support subinterpreters.
This PR removes cython from hermetic python imoprt hooks in order to make them subinterpretr-compatible.
commit_hash:1b067c37f55a4f1d9a6172df7009c75231cc1e25
|
|
|
|
| |
commit_hash:1154d5efa33edc65b77483c27fbacfbc8ab1b585
|
|
|
|
| |
commit_hash:87d74347445d4b849db4248cfd5b83ff3a0a54b9
|
|
|
|
|
|
|
|
|
|
| |
root.path files
Для того чтобы работал сценарий
```
echo `arc root` > /tmp/.root.path
```
commit_hash:255b16f66c1a610cea5322a3842edc492634faaf
|
|
|
|
| |
commit_hash:0440953ee45e859ed9f13c00cc38df246289314f
|
|
|
|
|
| |
This continues the work started in rXXXXXX.
commit_hash:8dedee6f36d2b5708f97d6b97bc8bc80ab55a10b
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`PyCapsule_*` symbols belong to `libpython.so`, there is no need to generate separate module for them.
```
$ nm --dynamic /usr/lib/x86_64-linux-gnu/libpython3.11.so.1.0 | grep PyCapsule
0000000000386550 T PyCapsule_GetContext
00000000003865a0 T PyCapsule_GetDestructor
00000000003865f0 T PyCapsule_GetName
0000000000386640 T PyCapsule_GetPointer
000000000038d540 T PyCapsule_Import
0000000000384bc0 T PyCapsule_IsValid
000000000038d6b0 T PyCapsule_New
00000000003863f0 T PyCapsule_SetContext
0000000000386440 T PyCapsule_SetDestructor
0000000000386490 T PyCapsule_SetName
00000000003864e0 T PyCapsule_SetPointer
000000000065cbc0 D PyCapsule_Type
```
commit_hash:58f102ca48732d8597382415a86554a7ef5f0458
|
|
|
|
| |
commit_hash:2a363fa0f479cb30e3e9e6d9a9c9ffa92112ecf1
|
|
|
|
| |
commit_hash:acdbcb5ab09c7f6e8d5bf8a01ff1954c04d7a80f
|
|
|
|
|
|
|
|
|
| |
[Вот так](HIDDEN_URL делает нативный питон
[Репродьюсер](HIDDEN_URL
Как оно выглядит [ДО](HIDDEN_URL и [ПОСЛЕ](HIDDEN_URL, а вот так [нативный](HIDDEN_URL
commit_hash:cdce69c28e699d42f25e43f5d6efb214c8227024
|
|
|
|
| |
commit_hash:175403568527edd57aee48e05da080129d67f6de
|
|
|
|
| |
commit_hash:38b40cc050b80e3e73a41f5c8fb85784865b664c
|
|
|
|
| |
commit_hash:3e80c666e788a9593668ee690b4791042eec95a5
|
|
|
|
| |
commit_hash:ee709cc1095985919972e31b34d0127eb322959f
|
|
|
|
| |
commit_hash:3433c11c4d386c785422b1e149e9a3a8de7f4f0f
|
|
|
|
|
|
|
|
|
| |
В репозитории больше не будет `__pycache__` при запусках через ya make / test
На примере devtools/ya/handlers/analyze_make/tests
Время конфигурации в горячем сценарии в режиме --ext-py при изменении одного питонфайлика: `Configure time - 6.1 s`
Время конфигурации в горячем сценарии в режиме --ext-py при изменении одного питонфайлика с текущими правками: `Configure time - 4.6 s`
commit_hash:adf5219cd4f347bb572393d4a6debd1436dc0815
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Добавляется поддержка стандартной работы с байткодом для бинарей собранных с --ext-py (HIDDEN_URL
На примере импорт теста для `devtools/ya/bin`
`time Y_PYTHON_ENTRY_POINT=library.python.testing.import_test.import_test:main YA_TEST_CONTEXT_FILE=/tmp/test.context ./ya-bin >/dev/null`
#|
||
Без патча ya m -r
|
real 0m2,934s
user 0m2,772s
sys 0m0,157s
||
||
Без патча
ya m -r --ext-py
|
real 0m10,916s
user 0m9,927s
sys 0m0,368s
||
||
C патчем
ya m -r
|
real 0m2,931s
user 0m2,774s
sys 0m0,156s
||
||
C патчем
ya m -r --ext-py
первый запуск с записью байткода
|
real 0m7,482s
user 0m5,174s
sys 0m0,620s
||
||
C патчем
ya m -r --ext-py
последующие запуски с использованием байткода с фс
|
real 0m3,550s
user 0m2,801s
sys 0m0,262s
||
|#
commit_hash:84f7bb273b09d51b88eb5c5b6dfcd3bb7c108307
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Режим позволяет перезапускать 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
|
|
|
|
| |
commit_hash:2a9f4a61b44a7e34d430d8615b5c9d2d120fa7d9
|
|
|
|
| |
commit_hash:a80065301df8a3de8b4d2ad596dfd995d3988485
|
|
|
|
| |
commit_hash:e95937c5f2c37075ed358ebb01e274fc9ddfcbb6
|
|
|
|
| |
commit_hash:e4f538de906ec2dcfa4e6907edad0b20916b93ca
|
|
|
|
| |
commit_hash:27af5f8a0a7836d78ffdc205213f07f79dd9f7ad
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
commit_hash:a9a7c2df09742a540851227c4fcb7d925edd9793
|
|
|
|
| |
commit_hash:a633306b66f89adbf188bf9c6d521bdf7b01f82f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. xfail тесты теперь должны содержать спец комментарий `custom error` с ожидаемым текстом ошибки
2. Все suites для xfail размечены спец. коментариями, некоторые тесты разбиты на несколько
3. Включены тесты с Python и Javascript udf для yt провайдера и переканонизированы (были отключены в github)
4. Для тяжелых xfail тестов аналогично убрана канонизация и включена проверка по спец. коментарию
5. Из dq_file/hybrid тестов убрана канонизация. Осталась только кросс-проверка результатов с yqlrun и блочным режимом
6. В dqrun теперь используется exception_policy вместо fail_policy (для корректной выдачи ошибок в тестах)
commit_hash:a92b3835f86b0c01225e81e3f28bb6d11d8d67a3
|
|
|
|
| |
commit_hash:bbf24592c367fa158fbc53e041fe367374d0750e
|
|
|
|
| |
commit_hash:2ad7a4bc9a9ae76fb2a70feb2681becd0de5c5c7
|
|
|
|
| |
commit_hash:bbe5982909469ab84284cb16547e69a096d992ea
|
|
|
|
|
| |
Add external autoincludes.json
commit_hash:1b3de1732fee590582ae5620570facc2c0987390
|
|
|
|
| |
commit_hash:63f0ba341b35ad9ea632bfc2971f028cebbec800
|
|
|
|
|
|
|
|
|
|
| |
Except the following directories:
* clickhouse/client
* datetime
* knn
* roaring
commit_hash:c7da95636144d28db109d6b17ddc762e9bacb59f
|
|
|
|
| |
commit_hash:8dfe46ba3b02673d0e6a35fdf824ab2c98255393
|
|
|
|
| |
commit_hash:d313ff8d16f964d796106f71b9e2d65b0ea39f82
|
|
|
|
| |
commit_hash:afe2bc6dcfc79e6d34dabab9a0c92d3fa18bc87d
|
|
|
|
| |
commit_hash:3e55f833d0efbd9feb7cb3f9ff320ce0faa9ec37
|
|
|
|
| |
commit_hash:c1f1219d64d21ec34a6f2724029ef2252f1fdb7e
|
|
|
|
| |
commit_hash:99ac877e6e05737455ad173d5ce45946fde7d623
|
|
|
|
| |
commit_hash:ecafab280d4dfb52401ab81932e10a8d434b1999
|
| |
|
|
|
|
| |
221e27d03ecf65a066e77e452326e20c49e89df5
|
| |
|
| |
|