code: def evaluate_function(f, X):
      """
      Returns the evaluation of a function *f* and the time per evaluation
      """
      num_data, dim_data = X.shape
      Y_eval = np.zeros((num_data, dim_data))
      Y_time = np.zeros((num_data, 1))
      for i in range(num_data):
          time_zero = time.time()
          Y_eval[i, :] = f(X[i, :])
          Y_time[i, :] = time.time() - time_zero
      return Y_eval, Y_time
  
file_path: GPyOpt/GPyOpt/util/general.py
imports: import numpy
  from scipy.special import erfc
  import time
  from ..core.errors import InvalidConfigError
label_desc: Use image node_id 11 for calling a global function with example usage: evaluate_function(f, X) and returns: Y_eval,  Y_time