Consider a convex set P in IRd and a piecewise polynomial concave function F: P IR. Let A be an algorithm that given a point x IRd computes F(x) if x P, or returns a concave polynomial p such that p(x) < 0 but for any y P, p(y) 0. We assume that d is fixed and that all comparisons in A depend on the sign of polynomial functions of the input point. We show that under these conditions, one can find maxP F in time which is polynomial in the number of arithmetic operations of A. Using our method we give the first strongly polynomial algorithms for many non-linear parametric problems in fixed dimension, such as the parametric max flow problem, the parametric minimum s-t distance, the parametric spanning tree problem and other problems. We also present an efficient algorithm for a very general convex programming problem in fixed dimension.