Abstract. We introduce a space-filling curve for triangular and tetrahedral red-refinement that can be computed using bitwise interleaving operations similar to the well-known Z-order or Morton curve for cubical meshes. To store sufficient information for random access, we define a low-memory encoding using 10 bytes per triangle and 14 bytes per tetrahedron. We present algorithms that compute the parent, children, and face-neighbors of a mesh element in constant time, as well as the next and previous element in the space-filling curve and whether a given element is on the boundary of the root simplex or not. Our presentation concludes with a scalability demonstration that creates and adapts selected meshes on a large distributed-memory system. Key words. Forest of octrees, parallel adaptive mesh refinement, Morton code, high performance computing, nonconforming simplicial mesh, space-filling curve AMS subject classifications. 65M50, 68W10, 65Y05, 65D181. Introduction. Conforming adaptive mesh refinement for simplicial (triangular and tetrahedral) meshes is one of the most successful concepts in numerical mathematics and computational science and engineering; see, e.g., [3,21,50]. Simplices provide high flexibility in meshing to arbitrary domain geometries [46,47] and can be mapped to a reference simplex using an elementwise constant Jacobian in most cases, which allows for an efficient numerical implementation. Discretization and integration methods of various kinds are available for both low and high orders of accuracy.Large-scale scientific computing requires fast and scalable algorithms for (1) adaptive refinement and coarsening (AMR) as well as (2) parallel partitioning. One class of methods for AMR exploits the properties of Delaunay triangulations [23,26,45], while partitioning of unstructured meshes is often approached by formulating the mesh topology as a graph. These triangulations are usually conforming; that is, elements intersect only along whole faces and edges. [20]. Graph-based algorithms have been advanced to target millions of processes and billions of elements [18,42,49]. Still, increasing the scalability and decreasing the absolute runtime and memory demands of distributed implementations remains a challenge, and the lack of an obvious parent-child structure in many unstructured meshing approaches prevents certain use cases.Nonconforming AMR in combination with recursive refinement makes refinement and coarsening nearly trivial operations. The additional mathematical logic to enable hanging faces and edges is well understood for both continuous and discontinuous discretizations [1,22,30,43]. It is local to the loop over the finite elements or volumes and transparent to most of the numerical pipeline, thus offering the possibility to extend existing conforming codes. The resolution may be as coarse as any chosen root mesh (a mesh which is not intended for further coarsening), which poses only a slight limit to geometric flexibility.The challenge of efficient partitioning of meshes may be addre...