A question about one example in CUDA SDK cuda kernel call

I found a piece of code in one example–EstimatePiQ in CUDA SDK:

computeValue<<<grid, block, block.x * sizeof(unsigned int)>>>(d_results, d_points, m_numSims);

About this kernel call, I know the first parameter grid specify the amount of grids and the second one block indicate the amount of blocks. But what’s the third parameter block.x * sizeof(unsigned int) used for??

This specifies the size of dynamically allocated shared memory. See the CUDA C Programming Guide section B.16 Execution Configuration.