skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Supporting 64-bit global indices in Epetra and other Trilinos packages :

Technical Report ·
DOI:https://doi.org/10.2172/1092994· OSTI ID:1092994

The Trilinos Project is an effort to facilitate the design, development, integration and ongoing support of mathematical software libraries within an object-oriented framework. It is intended for large-scale, complex multiphysics engineering and scientific applications [2, 4, 3]. Epetra is one of its basic packages. It provides serial and parallel linear algebra capabilities. Before Trilinos version 11.0, released in 2012, Epetra used the C++ int data-type for storing global and local indices for degrees of freedom (DOFs). Since int is typically 32-bit, this limited the largest problem size to be smaller than approximately two billion DOFs. This was true even if a distributed memory machine could handle larger problems. We have added optional support for C++ long long data-type, which is at least 64-bit wide, for global indices. To save memory, maintain the speed of memory-bound operations, and reduce further changes to the code, the local indices are still 32-bit. We document the changes required to achieve this feature and how the new functionality can be used. We also report on the lessons learned in modifying a mature and popular package from various perspectives design goals, backward compatibility, engineering decisions, C++ language features, effects on existing users and other packages, and build integration.

Research Organization:
Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
Sponsoring Organization:
USDOE National Nuclear Security Administration (NNSA)
DOE Contract Number:
AC04-94AL85000
OSTI ID:
1092994
Report Number(s):
SAND2013-5928; 463316
Country of Publication:
United States
Language:
English

Similar Records

Trilinos 4.0 tutorial.
Technical Report · Sat May 01 00:00:00 EDT 2004 · OSTI ID:1092994

Trilinos 3.1 tutorial.
Technical Report · Thu Jan 01 00:00:00 EST 2004 · OSTI ID:1092994

Epetra developers coding guidelines.
Technical Report · Mon Dec 01 00:00:00 EST 2003 · OSTI ID:1092994

Related Subjects