Catalyzes the NADPH-dependent reduction of glyoxylate and hydroxypyruvate into glycolate and glycerate, respectively. Can also reduce 2,5-diketo-D-gluconate (25DKG) to 5-keto-D-gluconate (5KDG), 2-keto-D-gluconate (2KDG) to D-gluconate, and 2-keto-L-gulonate (2KLG) to L-idonate (IA), but it is not its physiological function. Inactive towards 2-oxoglutarate, oxaloacetate, pyruvate, 5-keto-D-gluconate, D-fructose and L-sorbose. Activity with NAD is very low. glycolate + NADP(+) = glyoxylate + H(+) + NADPH (R)-glycerate + NAD(+) = 3-hydroxypyruvate + H(+) + NADH (R)-glycerate + NADP(+) = 3-hydroxypyruvate + H(+) + NADPH D-gluconate + NADP(+) = 2-dehydro-D-gluconate + H(+) + NADPH The catalytic efficiency is better for hydroxypyruvate than glyoxylate with NADPH as electron donor. Optimum pH is 7.5. Homodimer. Constitutively expressed. Belongs to the D-isomer specific 2-hydroxyacid dehydrogenase family. GhrB subfamily. Extended N-terminus.