Skip to content

Conversation

@jcf94
Copy link
Contributor

@jcf94 jcf94 commented Sep 22, 2020

Some small fix:

  • Add a read-write lock for SplitFactorizationMemo
  • Parallel the InitPopulation
  • Fix the warning of test_auto_scheduler_layout_rewrite test

@FrozenGene I tested this parallel implementation in my server, the running time of tests/python/unittest/test_auto_scheduler_search_policy.py reduced from 33s to 27s. Since your environment suffered more from this performance problem, you can have a try to see if this can help.

cc @merrymercy @comaniac

@merrymercy
Copy link
Member

merrymercy commented Sep 22, 2020

We probably should only benchmark the sample initial population part and compare the actual speedup with idea speedup.
We then can know how effective the parallelization is.

@merrymercy merrymercy self-assigned this Sep 22, 2020
@jcf94
Copy link
Contributor Author

jcf94 commented Sep 23, 2020

We probably should only benchmark the sample initial population part and compare the actual speedup with idea speedup.
We then can know how effective the parallelization is.

Good suggestion, from the tuning log I can see it reduced from an average of 2~3 seconds:

A CUDA test from the master branch
...
Sample Initial Population       #s: 456 fail_ct: 2048   Time elapsed: 2.60

to an average of 0.05~0.5 seconds:

The same test from this branch(This even tried more populations)
...
Sample Initial Population       #s: 648 fail_ct: 3448   Time elapsed: 0.17

on my server. cc @FrozenGene

And I'm thinking about maybe the Evolutionary Search part can also benefit from parallel_for in the same way? @merrymercy @comaniac

Copy link
Contributor

@comaniac comaniac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Yeah I think the mutation part could also use parallel_for.

@tqchen tqchen merged commit 56b18ec into apache:master Sep 23, 2020
@jcf94 jcf94 deleted the ParallelInitPopulation branch September 25, 2020 06:21
TusharKanekiDey pushed a commit to TusharKanekiDey/tvm that referenced this pull request Oct 13, 2020
TusharKanekiDey pushed a commit to TusharKanekiDey/tvm that referenced this pull request Oct 14, 2020
TusharKanekiDey pushed a commit to TusharKanekiDey/tvm that referenced this pull request Oct 15, 2020
TusharKanekiDey pushed a commit to TusharKanekiDey/tvm that referenced this pull request Oct 15, 2020
TusharKanekiDey pushed a commit to TusharKanekiDey/tvm that referenced this pull request Oct 16, 2020
trevor-m pushed a commit to neo-ai/tvm that referenced this pull request Oct 19, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants