We study non-local two-qubit operations from a geometric perspective. By applying a Cartan decomposition to su(4), we find that the geometric structure of non-local gates is a 3-Torus. We derive the invariants for local transformations, and connect these local invariants to the coordinates of the 3-Torus. Since different points on the 3-Torus may correspond to the same local equivalence class, we use the Weyl group theory to reduce the symmetry. We show that the local equivalence classes of two-qubit gates are in one-to-one correspondence with the points in a tetrahedron except on the base. We then study the properties of perfect entanglers, that is, the two-qubit operations that can generate maximally entangled states from some initially separable states. We provide criteria to determine whether a given two-qubit gate is a perfect entangler and establish a geometric description of perfect entanglers by making use of the tetrahedral representation of non-local gates. We find that exactly half the non-local gates are perfect entanglers. We also investigate the non-local operations generated by a given Hamiltonian. We first study the gates that can be directly generated by a Hamiltonian. Then we explicitly construct a quantum circuit that contains at most three non-local gates generated by a two-body interaction Hamiltonian, together with at most four local gates generated by single qubit terms. We prove that such a quantum circuit can simulate any arbitrary two-qubit gate exactly, and hence it provides an efficient implementation of universal quantum computation and simulation.