My mechanism is PinTool based. Basically I check at instruction level and then I can take the operands in the instruction and reduce the precision then I write the reduced precision operands back in the instruction and continue with the execution. However I can not do that in the weight updates calculation. That is why I need to avoid reducing precision there. By default my mechanism do the reduced precision during the whole program execution but avoids the weight updates routines.