Dissertation/ Thesis

Suitability of Java for Solving Large Sparse Positive Definite Systems of Equations Using Direct Methods

Bibliographic Details
Title: Suitability of Java for Solving Large Sparse Positive Definite Systems of Equations Using Direct Methods
Authors: Armstrong, Shea
Publisher Information: University of Waterloo
Publication Year: 2006
Collection: Theses Canada / Thèses Canada (Library and Archives Canada)
Subject Terms: Computer Science, Java, High-performance Java, Numerical Java Computing, Java compiler, Numerical Java Libraries
Description: The purpose of the thesis is to determine whether Java, a programming language that evolved out of a research project by Sun Microsystems in 1990, is suitable for solving large sparse linear systems using direct methods. That is, can performance comparable to the language traditionally used for sparse matrix computation, Fortran, be achieved by a Java implementation. Performance evaluation criteria include execution speed and memory requirements. A secondary criterion is ease of development. Many attractive features, unique to the Java programming language, make it desirable for use in sparse matrix computation and provide the motivation for the thesis. The 'write once, run anywhere' proposition, coupled with nearly-ubiquitous Java support, alleviates the need to re-write programs in the event of hardware change. Features such as garbage collection (automatic recycling of memory) and array-index bounds checking make Java programs more robust than those written in Fortran. Java has garnered a poor reputation as a high-performance computing platform, largely attributable to poor performance relative to Fortran in its early years. It is now a consensus among researchers that the Java language itself is not the problem, but rather its implementation. As such, improving compiler technology for numerical codes is critical to achieving high performance in numerical Java applications. Preliminary work involved converting SPARSPAK, a collection of Fortran 90 subroutines for solving large sparse systems of linear equations and least squares problems developed by Dr. Alan George, into Java (J-SPARSPAK). It is well known that the majority of the solution process is spent in the numeric factorization phase. Initial benchmarks showed Java performing, on average, 3. 6 times slower than Fortran for this critical phase. We detail how we improved Java performance to within a factor of two of Fortran.
Document Type: thesis
Language: English
Relation: http://hdl.handle.net/10012/1175
Availability: http://hdl.handle.net/10012/1175
Rights: Copyright: 2004, Armstrong, Shea. All rights reserved.
Accession Number: edsbas.AB33BE98
Database: BASE
FullText Text:
  Availability: 0
CustomLinks:
  – Url: http://hdl.handle.net/10012/1175#
    Name: EDS - BASE (ns324271)
    Category: fullText
    Text: View record from BASE
Header DbId: edsbas
DbLabel: BASE
An: edsbas.AB33BE98
RelevancyScore: 688
AccessLevel: 3
PubType: Dissertation/ Thesis
PubTypeId: dissertation
PreciseRelevancyScore: 688.004333496094
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Suitability of Java for Solving Large Sparse Positive Definite Systems of Equations Using Direct Methods
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Armstrong%2C+Shea%22">Armstrong, Shea</searchLink>
– Name: Publisher
  Label: Publisher Information
  Group: PubInfo
  Data: University of Waterloo
– Name: DatePubCY
  Label: Publication Year
  Group: Date
  Data: 2006
– Name: Subset
  Label: Collection
  Group: HoldingsInfo
  Data: Theses Canada / Thèses Canada (Library and Archives Canada)
– Name: Subject
  Label: Subject Terms
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Computer+Science%22">Computer Science</searchLink><br /><searchLink fieldCode="DE" term="%22Java%22">Java</searchLink><br /><searchLink fieldCode="DE" term="%22High-performance+Java%22">High-performance Java</searchLink><br /><searchLink fieldCode="DE" term="%22Numerical+Java+Computing%22">Numerical Java Computing</searchLink><br /><searchLink fieldCode="DE" term="%22Java+compiler%22">Java compiler</searchLink><br /><searchLink fieldCode="DE" term="%22Numerical+Java+Libraries%22">Numerical Java Libraries</searchLink>
– Name: Abstract
  Label: Description
  Group: Ab
  Data: The purpose of the thesis is to determine whether Java, a programming language that evolved out of a research project by Sun Microsystems in 1990, is suitable for solving large sparse linear systems using direct methods. That is, can performance comparable to the language traditionally used for sparse matrix computation, Fortran, be achieved by a Java implementation. Performance evaluation criteria include execution speed and memory requirements. A secondary criterion is ease of development. Many attractive features, unique to the Java programming language, make it desirable for use in sparse matrix computation and provide the motivation for the thesis. The 'write once, run anywhere' proposition, coupled with nearly-ubiquitous Java support, alleviates the need to re-write programs in the event of hardware change. Features such as garbage collection (automatic recycling of memory) and array-index bounds checking make Java programs more robust than those written in Fortran. Java has garnered a poor reputation as a high-performance computing platform, largely attributable to poor performance relative to Fortran in its early years. It is now a consensus among researchers that the Java language itself is not the problem, but rather its implementation. As such, improving compiler technology for numerical codes is critical to achieving high performance in numerical Java applications. Preliminary work involved converting SPARSPAK, a collection of Fortran 90 subroutines for solving large sparse systems of linear equations and least squares problems developed by Dr. Alan George, into Java (J-SPARSPAK). It is well known that the majority of the solution process is spent in the numeric factorization phase. Initial benchmarks showed Java performing, on average, 3. 6 times slower than Fortran for this critical phase. We detail how we improved Java performance to within a factor of two of Fortran.
– Name: TypeDocument
  Label: Document Type
  Group: TypDoc
  Data: thesis
– Name: Language
  Label: Language
  Group: Lang
  Data: English
– Name: NoteTitleSource
  Label: Relation
  Group: SrcInfo
  Data: http://hdl.handle.net/10012/1175
– Name: URL
  Label: Availability
  Group: URL
  Data: http://hdl.handle.net/10012/1175
– Name: Copyright
  Label: Rights
  Group: Cpyrght
  Data: Copyright: 2004, Armstrong, Shea. All rights reserved.
– Name: AN
  Label: Accession Number
  Group: ID
  Data: edsbas.AB33BE98
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsbas&AN=edsbas.AB33BE98
RecordInfo BibRecord:
  BibEntity:
    Languages:
      – Text: English
    Subjects:
      – SubjectFull: Computer Science
        Type: general
      – SubjectFull: Java
        Type: general
      – SubjectFull: High-performance Java
        Type: general
      – SubjectFull: Numerical Java Computing
        Type: general
      – SubjectFull: Java compiler
        Type: general
      – SubjectFull: Numerical Java Libraries
        Type: general
    Titles:
      – TitleFull: Suitability of Java for Solving Large Sparse Positive Definite Systems of Equations Using Direct Methods
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Armstrong, Shea
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 01
              Type: published
              Y: 2006
          Identifiers:
            – Type: issn-locals
              Value: edsbas
ResultId 1