2024 NonStop Technical Boot Camp技術高峰論壇 慶祝NonStop系統50週年 發表創新技術與應用(上)
作者/莊佳哲
作者簡介
作者現職凌群電腦金控軟體研發總處軟體工程師,主要負責期貨系統軟體,專長為COBOL、JAVA、C#軟體開發。
前言
2024 NonStop Technical Boot Camp技術高峰論壇是NonStop年度最盛大的用戶聚會,為全球NonStop用戶資訊專業人員的主要活動;2024年適逢HPE NonStop 50週年年度大會,於美國時間九月二十三日至二十六日在加州Monterey 凱悅酒店舉辦,有大約30個合作廠商參與本次技術高峰論壇,進行全面性的NonStop技術研討。
此次NonStop TBC議題除了由HPE專家發表外,也有眾多合作廠商發表其解決方案與成功案例,同時也安排客戶親自分享成功案例;主要內容涵蓋軟硬體最新發展、虛擬化技術、資料庫、應用系統開發新技術、資訊安全、管理工具與成功案例經驗分享等。
主題演說
此次Keynote Speech是由HPE Spaceborne Computer-2首席研究員Mark Fernandez分享開發星載電腦(Spaceborne Computer)的經驗。演說中表示:Spaceborne Computer-2配備了HPE Edgeline EL4000和HPE DL360 Gen10 server,加入KIOXIA超過130 TB的快閃記憶體,是有史以來,所有運送至國際太空站的設備之中儲存空間最多的設備。
以往在太空中收集的數據,是透過研究前哨站收集再發送回地球處理。在太空站安裝星載電腦能夠在低軌道即時地評估數據,繼而只需將輸出數據或分析結果傳回地球。這可將下載數據量減少3萬倍,大大縮短下載時間。
演說中提到星載電腦透過使用Edge Computing、AI、Machine Learning來大幅縮減運算所需要的時間,舉例來說,一個2.8GB的樣本數據,若使用傳統的收集和轉發的方式從國際空間站傳輸到地球大約需要大約18小時,而使用星載電腦在太空站內處理後只需要2秒鐘就能將數據傳回地球。
HPE成功克服了太空中的惡劣環境,並大幅提升地球與太空的數據交換效率,推動在地球及太空的研究。
NonStop系統最新發展
此次技術高峰論壇的主要議題包括:
1.Kernel-Level Threading (KLT):提高應用程式的處理能力和CPU核心使用效率。
2.便捷的middleware:提供更便利的middleware產品和解決方案,讓NonStop系統在混合式IT環境中發揮其優勢。
3.多元的應用系統開發技術:提供多元化的應用系統開發技術,讓應用系統開發更適應不斷變化的市場需求。
4.強大的資料庫服務:提供強大的NonStop SQL/MX資料庫服務,滿足客戶對資料管理與應用的需求。
5.完善的資訊安全解決方案:討論完整的資訊安全解決方案,確保系統安全可靠。
6.系統管理工具:探討各種管理工具如NSC、OSM…等,協助客戶更有效地管理系統。
本次論壇針對NonStop新技術與應用更深入且與廣泛的探討,滿足不斷變化的市場需求。
NonStop的多執行緒技術
一、NonStop Thread Models歷史
- Guardian單核
- “Multithreaded” servers (nowait I/O & TMF transaction switching)
- Gthread Library
- OSS單核
- Gthread Library
- Standard POSIX Threads(SPT)(limited support)
- POSIX User Threads(PUT)
- OSS多核
- Kernel Level Threads(KLT) – 目前測試中
二、Kernel Level Threads (KLT)
未來在NonStop系統的OSS上將提供KLT,目前已經有13個HPE合作夥伴進行測試,從測試結果來看,程式能夠提高5倍處理容量並且在OpenSSL上比使用PUT快25%。比起以往的user-level thread,KLT較能夠有效利用多核心優勢,提升程式效能。
- 特性
(1)原生內核支援(所有子系統都是thread aware)
(2)共享process-level資訊
(3)Pre-emptive執行
(4)POSIX兼容
(5)從其他thread model轉換至KLT只需少部分程式碼修改
(6)只在OSS上使用
(7)Guardian IPC支援
(8)新的測量計數器
- 好處
(1)更高效利用IPU
(2)改進平行處理能力
(3)增強程式反應能力
(4)更容易從NIX應用程式轉換
(5)支援現代API和middleware
- 效能
論壇中,NonStop廠商TCM分享他們測試KLT的經驗,項目有處理容量(Application throughput)、延遲時間(Transactional Latency)、擴充性(Transactional Scalability)、I/O bound應用系統效能(I/O-Bound performance)、資料轉換損耗(Context-Switch Overhead)、線程管理-創建和銷毀(Thread management – Creation & Destruction)。
對比舊有的PUT,KLT的應用程式處理容量明顯的比PUT高,並且在Transactional Latency測試中,延遲秒數同樣的比PUT更低,甚至若使用越多核心還能更進一步降低延遲秒數。除了在thread creation & Destruction的測試中花的時間較PUT多之外,其他項目都明顯優於PUT。
總結來說KLT對於效能提升無疑是成功的,但在會議中也提到添加更多的thread對於效能來說並不會是線性加速,若是大部分工作不能平行處理的話,添加thread後只會有少許的效能提升,有時候甚至還會降低性能。所以使用KLT前還需評估程式適不適合使用。(未完,待續)
參考資料
- Mark Pollans, "Extending NonStop into the Future", 2024 NonStop TBC
- Prashanth Kamath, Roland Lemoine, “NonStop Software Roadmap”, 2024 NonStop TBC
- Roland Lemoine, “Accelerate your Digital Transformation with NonStop SQL/MX” , 2024 NonStop TBC
- Greg Stewart, Shiva Subramanian, Yash Kapadia, Randall Becker”, Kernel Level Threading (KLT) - A Performance Changer”, 2024 NonStop TBC
- Keith Moore, “The NonStop Middleware: Know the Foundation of NonStop Fundamentals and Modernization” , 2024 NonStop TBC
- Shiva Subramanian, “Unleashing Performance: The Future of NonStop with Kernel-Level Threading (KLT)”, 2024 NonStop TBC
- Keith Moore, Shanice Abigail, Nelson Wong, “HPE NonStop Development Environment for Public Cloud (NSDevEnv)” , 2024 NonStop TBC
- Shanice Abigail, Nelson Wong, “Hello World! From HPE NonStop Developer Community” , 2024 NonStop TBC
- Lucrecia Krause, Shanice Abigail, “Bridging the Gap: Bringing New Talent to NonStop from University Collaboration to Full-Time Employment” , 2024 NonStop TBC
- https://nsu40.github.io/nonstop101/
- https://aws.amazon.com/marketplace/pp/prodview-ge2we5lpjhxoe