diff --git a/ParadisEO-GPU/src/neighborhood/moCudaKswapNeighborhood.h b/ParadisEO-GPU/src/neighborhood/moCudaKswapNeighborhood.h index aebb387bc..1e9e561f3 100644 --- a/ParadisEO-GPU/src/neighborhood/moCudaKswapNeighborhood.h +++ b/ParadisEO-GPU/src/neighborhood/moCudaKswapNeighborhood.h @@ -41,6 +41,10 @@ class moCudaKswapNeighborhood: public moKswapNeighborhood { public: + /** + * Define a Neighbor and type of a solution corresponding + */ + typedef N Neighbor; typedef typename Neighbor::EOT EOT; @@ -55,7 +59,6 @@ public: /** * Constructor * @param _size the size of solution - * @param _size the solution size * @param _Kswap the number of swap * @param _eval show how to evaluate neighborhood of a solution at one time */ @@ -87,13 +90,14 @@ public: virtual void init(EOT& _solution, Neighbor& _current) { moKswapNeighborhood::init(_solution, _current); + //Send Mapping for only the first time if (sendMapping) { cudaMemcpy(device_Mapping, mapping, (Kswap + 1) * neighborhoodSize * sizeof(unsigned int), cudaMemcpyHostToDevice); sendMapping = false; } //Compute all neighbors fitness at one time - eval.neighborhoodEval(_solution, device_Mapping, Kswap); + eval.neighborhoodKswapEval(_solution, device_Mapping, Kswap); } /**