I need help understanding some lines of code

I was going over the sample code for matrix multiplication in cuda and came across some lines of code i can’t really quite figure out. Can anyone please help me understand why the below bolded lines of code is used in matrix multiplication in cuda.

// Optional Command-line multiplier for matrix sizes
unsigned int uiWA, uiHA, uiWB, uiHB, uiWC, uiHC;
int iSizeMultiple = 1;
shrGetCmdLineArgumenti(argc, (const char**)argv, “sizemult”, &iSizeMultiple);
iSizeMultiple = CLAMP(iSizeMultiple, 1, 10);

// For GPUs with fewer # of SM's, we limit the maximum size of the matrix
if (props.multiProcessorCount <= 4) {
	[b]uiWA = 2 * BLOCK_SIZE * iSizeMultiple;
	uiHA = 4 * BLOCK_SIZE * iSizeMultiple;
	uiWB = 2 * BLOCK_SIZE * iSizeMultiple;
	uiHB = 4 * BLOCK_SIZE * iSizeMultiple;
	uiWC = 2 * BLOCK_SIZE * iSizeMultiple;
	uiHC = 4 * BLOCK_SIZE * iSizeMultiple;[/b]
} else {
	[b]uiWA = WA * iSizeMultiple;
	uiHA = HA * iSizeMultiple;
	uiWB = WB * iSizeMultiple;
	uiHB = HB * iSizeMultiple;
	uiWC = WC * iSizeMultiple;
	uiHC = HC * iSizeMultiple;[/b]
shrLog("\nUsing Matrix Sizes: A(%u x %u), B(%u x %u), C(%u x %u)\n\n", 
        uiWA, uiHA, uiWB, uiHB, uiWC, uiHC);

You help will be greatly appreciated.

Thank you.

Looks like the matrix multi uses 3 arrays A,B,C and the prefix ui is a convention the programmer uses to indicate the variables are unsigned int
I’d also guess that W and H stand for Width and Height

So the code is just calculating the size of arrays to use in the example based on the type of GPU its being run on.

Thanks for your reply! So do you know what the int variable iSizeMultiple is meant for? I can’t quite figure it out.