replace temp global variable m/ml/mr by local memory of updateCheckNode,
time drop from 476us to 105us (save 78%)
11 ms total, 35 iteration

nvprof
==3296== Profiling application: ldpc_bch_dvb-s2
==3296== Profiling result:
Time(%)   Time	   Calls  Avg       Min       Max  	Name
 48.09%  37.077ms  353  105.03us  72.352us  117.89us  updateCheckNode
 32.45%  25.020ms  353  70.877us  68.192us  73.696us  updateVariableNode
 11.63%  8.9630ms  353  25.390us  24.608us  26.368us  syndrome_check
  3.51%  2.7028ms  353  7.6560us  7.4240us  7.8720us  void thrust::reduce
  1.22%  938.78us  363  2.5860us  2.2400us  13.120us  [CUDA memcpy DtoH]
  0.88%  678.46us   18  37.692us  1.3440us  192.67us  [CUDA memcpy HtoD]
  0.23%  174.46us   10  17.446us  17.056us  18.304us  initializeMVC_kernel
  0.18%  136.19us    5  27.238us  3.9360us  43.488us  [CUDA memset]