Bug 1795502 Comment 0 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

When I run `/.mach try fuzzy` and have to regenerate the task graph, it can take a while, e.g. this execution took ~46 seconds  (note: I left the interactive prompt ASAP & this might have some file system caching because it usually feels slower):
```sh
$ time ./mach try fuzzy
Task configuration changed, generating target task set
no tasks selected
./mach try fuzzy  45.69s user 2.25s system 97% cpu 49.018 total
```

I took a profile using `./mach --profile-command` (where it took 104s to `generate_tasks()`) and tried to find any obvious opportunities for speed ups. The only thing I found is that we spend 26 seconds or 1/4 of total execution time in `copy.deepcopy`, which seems excessive.

Note: I've attached the profile where I may have lingered in the prompt for a little while. You can read it with snakeviz (i.e. pip install it and execute `python3 -m snakeviz <profile>`. It's hard to read the profile though because the generator functions get nested in the call stack.
When I run `/.mach try fuzzy` locally and have to regenerate the task graph, it can take a while, e.g. this execution took ~46 seconds  (note: I left the interactive prompt ASAP & this might have some file system caching because it usually feels slower):
```sh
$ time ./mach try fuzzy
Task configuration changed, generating target task set
no tasks selected
./mach try fuzzy  45.69s user 2.25s system 97% cpu 49.018 total
```

I took a profile using `./mach --profile-command` (where it took 104s to `generate_tasks()`) and tried to find any obvious opportunities for speed ups. The only thing I found is that we spend 26 seconds or 1/4 of total execution time in `copy.deepcopy`, which seems excessive.

Note: I've attached the profile where I may have lingered in the prompt for a little while. You can read it with snakeviz (i.e. pip install it and execute `python3 -m snakeviz <profile>`. It's hard to read the profile though because the generator functions get nested in the call stack.

I'm on macOS 12.5.1. The commit I took the timing from is `88ee5823b934` and the profile was taken there or on a nearby commit.
When I run `/.mach try fuzzy` locally and have to regenerate the task graph, it can take a while, e.g. this execution took ~46 seconds  (note: I left the interactive prompt ASAP & this might have some file system caching because it usually feels slower):
```sh
$ time ./mach try fuzzy
Task configuration changed, generating target task set
no tasks selected
./mach try fuzzy  45.69s user 2.25s system 97% cpu 49.018 total
```

I took a profile using `./mach --profile-command` (where it took 104s to `generate_tasks()`) and tried to find any obvious opportunities for speed ups. The only thing I found is that we spend 26 seconds or 1/4 of total execution time in `copy.deepcopy`, which seems excessive.

Note: I've attached the profile where I may have lingered in the prompt for a little while. You can read it with snakeviz (i.e. pip install it and execute `python3 -m snakeviz <profile>`. It's hard to read the profile though because the generator functions get nested in the call stack.

I'm on macOS 12.5.1. The commit I took the timing from is `8454bb0c09fe` and the profile was taken there or on a nearby commit.

Back to Bug 1795502 Comment 0