IDEAS home Printed from https://ideas.repec.org/h/spr/sprchp/978-1-4612-1984-2_5.html
   My bibliography  Save this book chapter

On the Numerical Efficiency of C++ in Scientific Computing

In: Numerical Methods and Software Tools in Industrial Mathematics

Author

Listed:
  • Erlend Arge

    (SINTEF)

  • Are Magnus Bruaset

    (SINTEF)

  • Phillip B. Calvin

    (University of North Carolina, Dept. of Environmental Sciences and Engineering)

  • Joseph F. Kanney

    (University of North Carolina)

  • Hans Petter Langtangen

    (University of Oslo, Dept. of Mathematics)

  • Cass T. Miller

    (University of North Carolina)

Abstract

We investigate the relative efficiency of C++ and C code versus FORTRAN 77 code through numerical experiments conducted on a range of computer platforms. The problem areas cover basic linear algebra and finite element solution of porous media fluid flow and species transport problems. The C++ codes are short and make extensive use of Diffpack, a generic library based on object-oriented programming techniques, while the FORTRAN and C programs are either based on vendor supplied numerical libraries or written and tuned particularly for the test problem. Challenges encountered in optimizing C++ codes and the efficiency of dynamic memory handling in C++ are also addressed. Differences in computational efficiency observed for the problem areas studied were small, and tended to be problem dependent. Based on our experience with optimizing C++ code, we conclude that the use of object-oriented techniques should be confined to high-level administrative tasks, while CPU intensive numerics should be implemented using low-level C code and carefully constructed for-loops.

Suggested Citation

  • Erlend Arge & Are Magnus Bruaset & Phillip B. Calvin & Joseph F. Kanney & Hans Petter Langtangen & Cass T. Miller, 1997. "On the Numerical Efficiency of C++ in Scientific Computing," Springer Books, in: Morten Dæhlen & Aslak Tveito (ed.), Numerical Methods and Software Tools in Industrial Mathematics, chapter 5, pages 91-118, Springer.
  • Handle: RePEc:spr:sprchp:978-1-4612-1984-2_5
    DOI: 10.1007/978-1-4612-1984-2_5
    as

    Download full text from publisher

    To our knowledge, this item is not available for download. To find whether it is available, there are three options:
    1. Check below whether another version of this item is available online.
    2. Check on the provider's web page whether it is in fact available.
    3. Perform a
    for a similarly titled item that would be available.

    More about this item

    Keywords

    ;
    ;
    ;
    ;
    ;

    Statistics

    Access and download statistics

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:spr:sprchp:978-1-4612-1984-2_5. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    We have no bibliographic references for this item. You can help adding them by using this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: Sonal Shukla or Springer Nature Abstracting and Indexing (email available below). General contact details of provider: http://www.springer.com .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.