-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Trigger JIT tracing&compilation more often in tests #12250
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 3 commits
ef6db9f
4e504e1
2c965c1
ca53391
88cf395
b3a2b3e
a979682
94714eb
f397961
b4ac0e2
8c92c0e
8701969
104f03f
c5af745
c30b9b3
e11a67a
665e09c
f822a56
4aa113f
543b52b
a06eea9
8de7066
1a4d450
96f7b74
84373f0
f837597
4caf2d6
12281a4
dbd4005
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -108,6 +108,14 @@ jobs: | |
-d zend_extension=opcache.so | ||
-d opcache.enable_cli=1 | ||
-d opcache.jit_buffer_size=16M | ||
-d opcache.jit_prof_threshold=0.000000001 | ||
-d opcache.jit_max_root_traces=10000000 | ||
-d opcache.jit_max_side_traces=10000000 | ||
-d opcache.jit_max_exit_counters=1000000 | ||
-d opcache.jit_hot_loop=1 | ||
-d opcache.jit_hot_func=1 | ||
-d opcache.jit_hot_return=1 | ||
-d opcache.jit_hot_side_exit=1 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. These are probably not the best settings, because they will trigger JIT compilation on the first function entry or loop iteration and this sometime may lead to very unnatural traces that will never executed. Anyway, I think it make sense to start with these settings and then change them to a bit less aggressive. (e.g. 2 or 3). Note, that these settings may increase the tests time. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I am aware they increase test times, JIT compilation on first function entry/loop iteration is precisely why I chose those values, any other value (even 2) already breaks reproduction of bugs like #12249 |
||
- name: Test OpCache | ||
uses: ./.github/actions/test-linux | ||
with: | ||
|
@@ -199,6 +207,14 @@ jobs: | |
-d zend_extension=opcache.so | ||
-d opcache.enable_cli=1 | ||
-d opcache.jit_buffer_size=16M | ||
-d opcache.jit_prof_threshold=0.000000001 | ||
-d opcache.jit_max_root_traces=10000000 | ||
-d opcache.jit_max_side_traces=10000000 | ||
-d opcache.jit_max_exit_counters=1000000 | ||
-d opcache.jit_hot_loop=1 | ||
-d opcache.jit_hot_func=1 | ||
-d opcache.jit_hot_return=1 | ||
-d opcache.jit_hot_side_exit=1 | ||
- name: Test OpCache | ||
uses: ./.github/actions/test-linux | ||
with: | ||
|
@@ -263,6 +279,14 @@ jobs: | |
-d opcache.enable_cli=1 | ||
-d opcache.protect_memory=1 | ||
-d opcache.jit_buffer_size=16M | ||
-d opcache.jit_prof_threshold=0.000000001 | ||
-d opcache.jit_max_root_traces=10000000 | ||
-d opcache.jit_max_side_traces=10000000 | ||
-d opcache.jit_max_exit_counters=1000000 | ||
-d opcache.jit_hot_loop=1 | ||
-d opcache.jit_hot_func=1 | ||
-d opcache.jit_hot_return=1 | ||
-d opcache.jit_hot_side_exit=1 | ||
- name: Test OpCache | ||
uses: ./.github/actions/test-macos | ||
with: | ||
|
@@ -375,6 +399,14 @@ jobs: | |
echo opcache.enable_cli=1 >> /etc/php.d/opcache.ini | ||
echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini | ||
echo opcache.jit_buffer_size=1G >> /etc/php.d/opcache.ini | ||
echo opcache.jit_prof_threshold=0.000000001 >> /etc/php.d/opcache.ini | ||
echo opcache.jit_max_root_traces=10000000 >> /etc/php.d/opcache.ini | ||
echo opcache.jit_max_side_traces=10000000 >> /etc/php.d/opcache.ini | ||
echo opcache.jit_max_exit_counters=1000000 >> /etc/php.d/opcache.ini | ||
echo opcache.jit_hot_loop=1 >> /etc/php.d/opcache.ini | ||
echo opcache.jit_hot_func=1 >> /etc/php.d/opcache.ini | ||
echo opcache.jit_hot_return=1 >> /etc/php.d/opcache.ini | ||
echo opcache.jit_hot_side_exit=1 >> /etc/php.d/opcache.ini | ||
- name: Test AMPHP | ||
if: matrix.branch.ref != 'PHP-8.0' | ||
run: | | ||
|
Uh oh!
There was an error while loading. Please reload this page.