Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Throwaway issue to help experimenting now that #1608842: Replace list of bootstrap modules, enabled modules, enabled themes, and default theme with config is green. please dont review this is only for bot.
Comment | File | Size | Author |
---|---|---|---|
#4 | 1794970.patch | 95.46 KB | chx |
#4 | interdiff.txt | 3.81 KB | chx |
Comments
Comment #1
alexpottSo here's my investigations so far:
Site 1, HEAD, Devel enabled, Test user created (not admin) viewing front page - http://new.vit-al.co.uk/xhprof/?run=50623310cc72c&source=
Site 2, HEAD + Patch, Devel enabled, Test user created (not admin) viewing front page - http://new.vit-al.co.uk/xhprof/?run=5062330a62b7e&sort=ct&source=
Site 1 makes 14,358 function calls
Site 2 makes 39,100 function calls
Now this is actually because of the devel module's devel_boot function... unfortunately because I'm using devel to generate the runs... will redo later... but issue is with the line
drupal_get_filename('module', 'user', 'modules/user/user.module');
which causes all of the extra function calls... if the load of the user module is removed then the HEAD+patch uses nearly the same number of function.Maybe simpletest is causing something similar to occur?
Comment #2
alexpottBecause what I really don't understand is why this patch has not resulted in a quicker test run!
Enabling aggregator in HEAD:
Overall Summary
Total Incl. Wall Time (microsec): 978,908 microsecs
Total Incl. CPU (microsecs): 920,947 microsecs
Total Incl. MemUse (bytes): 46,562,736 bytes
Total Incl. PeakMemUse (bytes): 46,689,968 bytes
Number of Function Calls: 131,369
Enabling aggregator in HEAD + Patch:
Overall Summary
Total Incl. Wall Time (microsec): 786,837 microsecs
Total Incl. CPU (microsecs): 752,965 microsecs
Total Incl. MemUse (bytes): 42,011,200 bytes
Total Incl. PeakMemUse (bytes): 42,131,608 bytes
Number of Function Calls: 108,001
Comment #3
chx CreditAttribution: chx commentedRunning a test from the browser IS faster. Ran the add feed test.I have grepped the xhprof output dir for prepareEnv.
With patch
Overall Summary
Total Incl. Wall Time (microsec): 16,650,810 microsecs
Total Incl. CPU (microsecs): 8,496,113 microsecs
Total Incl. MemUse (bytes): 16,562,472 bytes
Total Incl. PeakMemUse (bytes): 17,563,344 bytes
Number of Function Calls: 1,244,067
Without patch
Overall Summary
Total Incl. Wall Time (microsec): 20,277,706 microsecs
Total Incl. CPU (microsecs): 10,325,993 microsecs
Total Incl. MemUse (bytes): 30,384,992 bytes
Total Incl. PeakMemUse (bytes): 31,672,768 bytes
Number of Function Calls: 1,257,827
The patch beats HEAD summarily. Conclusion: the run test script must do something nasty.
Comment #4
chx CreditAttribution: chx commentedSo, the problem I think is that the run once part of the script runner calls simpletest_classloader_register which does a rebuild on every test. Untrivial to fix... but here's something.
Comment #5
chx CreditAttribution: chx commentedTest run duration: 23 min 36 sec, that's progress.
Comment #6
chx CreditAttribution: chx commented