update sdp_solver and add compute_metrics