bsc-pm / nanox

Nanos++ is a runtime designed to serve as runtime support in parallel environments. It is mainly used to support OmpSs, a extension to OpenMP developed at BSC.
https://pm.bsc.es/nanox
GNU Lesser General Public License v3.0
38 stars 15 forks source link

In schedulers where batch queue is not implemented, use default. #4

Closed isaacsb closed 7 years ago

isaacsb commented 7 years ago

In order to solve some ICC errors regarding partial overloads, commit ad9f248b added a definition for the batch-mode queue method in classes not manually implementing it that called fatal. This causes such schedulers not to work at all. The base SchedulePolicy class has a default method implementation which should generally work with all schedule policies, so this branch changes that implementation with a using SchedulePolicy::queue clause that tells the compiler to use the default implementation of queue (unless overloaded).

Doing specific implementations of the method would be preferred, I suppose, but this is a fast solution that should work for (most of) the other scheduler policies.