研發以先進程式語言改寫科學計算程式時所需的準則與工具(2/3)

專案詳細資料

Description

儘管近年來先進程式語言已提供豐富的科學計算支援,在許多科學領域裡仍無法順利改寫以Fortran等傳統程式語言撰寫傳承至今的程式。如今對許多科學家而言,事實上並沒有執著於傳統程式語言的理由。先進程式語言像是Python提供了越來越多的新特性,讓程式開發者得以更簡潔且具有抽象性的原始碼撰寫程式,使開發者的意圖明確並有助於程式碼的維護與使用。許多先進程式語言也提供高效能的底層二進位函式庫,大幅減低了其編譯器最佳化不足的疑慮。然而,即便新生代的科學家偏好先進程式語言,但考量到改寫的門檻與困難,仍不得不沿用傳統程式語言。不幸地,隨著科學計算程式的功能擴充、架構修改、效能調校、及資料量增加等,修改程式碼的需求顯得日漸急迫但卻日益困難。舊有的傳統語言程式碼不僅往往缺乏註解,語言先天上的抽象性不足也阻礙了開發者的理解與維護。本研究進行一連串的步驟,與有著計算程式改寫需求的科學家合作,以兩個科學計算程式作為範例,研發改寫科學計算程式時所需的規範與工具,提供科學計算開發者改寫舊有程式時可參考的依據,以降低改寫門檻並減輕開發負擔,期使科學計算程式可因應更大資料量、更高計算量,並進而發展特定領域函式庫,兼顧高效能與後端處理的銜接。
狀態已完成
有效的開始/結束日期1/08/1931/07/20

聯合國永續發展目標

聯合國會員國於 2015 年同意 17 項全球永續發展目標 (SDG),以終結貧困、保護地球並確保全體的興盛繁榮。此專案有助於以下永續發展目標:

  • SDG 12 - 負責任的消費與生產
  • SDG 13 - 氣候行動
  • SDG 17 - 為永續目標構建夥伴關係

Keywords

  • 科學計算
  • 特定領域語言
  • 高效能運算
  • 程式碼改寫

指紋

探索此專案觸及的研究主題。這些標籤是根據基礎獎勵/補助款而產生。共同形成了獨特的指紋。