The authors consider first a discrete event static system that is to be simulated at values of a parameter or vector of parameters θ. The system is assumed driven by an input X, where typically X is a vector of variables whose density fÅθ(x) depends on the parameter θ. For the purpose of optimizing, finding roots, or graphing the expected performance EÅθL(X) for performance measure L, it is useful to estimate not only the expected value but also its gradient. An unbiased estimator for the latter is the score function estimator L(X)S(θ)=L(X) ∂/∂θlnfÅθ(x). This estimator and likelihood ratio analogues typically require variance reduction, and the authors consider conditioning on the value of the score function for this purpose. The efficiency gains due to performing the Monte Carlo conditionally can be very large. Extension to discrete event dynamic systems such as the M/G/1 queue and other more complicated systems is considered.