tvm
tvm copied to clipboard
[AutoTVM] Introduce PSOTuner for AutoTVM
This commit introduces the Particle Swarm Optimization (PSO) tuner PSOTuner to AutoTVM, enhancing tuning efficiency by better exploring the configuration space compared to GATuner. Key additions include:
Major Changes:
- PSOTuner Implementation: Implements the
PSOTunerclass using the PSO algorithm to manage particle initialization, position, velocity updates, and fitness evaluation for TVM tasks. - Integration into AutoTVM: The PSOTuner is now integrated into the AutoTVM tuner module, accessible like existing tuners such as
GATuner. - Test Cases: Adds test cases to validate PSOTuner functionality and its effectiveness in various tuning scenarios.
Benefits:
- Enhanced Tuning Efficiency: By leveraging PSO, which is known for its ability to find global optima in complex search spaces, the tuner is expected to provide better performance tuning outcomes.
This is an initial implementation, and feedback on its performance and functionality is highly encouraged to further refine this tuner.
Hi @Junyi-99 ,
Thank you for the contribution !
Are there some numbers, advantages or a description on how this algorithm performs ? If work is based on a paper or similar please make a reference in the code, let the users know more.
I add here few reference to code owners: Cc @comaniac , @merrymercy , @vinx13 , @jcf94
closing for now as we are phasing out AutoTVM, thank you for the contribution, if there are updates on metaschedule, happy to followup