Exploiting parallelism of irregular problems and performance evaluation on heterogeneous multi-core architectures