อ่าน 6 นาที
แอปเทเนอร์
Apptainer (เดิม ชื่อ Singularity ) เป็น โปรแกรมคอมพิวเตอร์ โอเพนซอร์ส ฟรี ที่ทำการ จำลอง เสมือนระดับระบบปฏิบัติการ หรือที่เรียกว่า คอนเทนเนอร์ [ 4 ]
แอปเทเนอร์
| แอปเทเนอร์ | |
|---|---|
| ชื่ออื่นๆ | เอกภาวะ |
| ผู้เขียนต้นฉบับ | เกรกอรี เคิร์ตเซอร์ (gmk) และคณะ |
| นักพัฒนา | มูลนิธิลินุกซ์ |
| ปล่อย | 30 พฤศจิกายน 2021 |
| เวอร์ชันเสถียร | |
| เขียนเป็น | ไป[ 2 ] |
| ระบบปฏิบัติการ | ลินุกซ์ |
| พิมพ์ | การจำลองเสมือนระดับระบบปฏิบัติการ |
| ใบอนุญาต | ใบอนุญาต BSD 3 ข้อ[ 3 ] |
| เว็บไซต์ | apptainer.org |
| ที่เก็บข้อมูล |
|
Apptainer (เดิมชื่อ Singularity ) เป็น โปรแกรมคอมพิวเตอร์ โอเพนซอร์สฟรีที่ทำการจำลองเสมือนระดับระบบปฏิบัติการหรือที่เรียกว่าคอนเทนเนอร์ [ 4 ]
หนึ่งในประโยชน์หลักของ Apptainer คือการนำคอนเทนเนอร์และความสามารถในการทำซ้ำมาสู่การคำนวณทางวิทยาศาสตร์และ โลก ของการคำนวณประสิทธิภาพสูง (HPC) [ 5 ]
ความต้องการความสามารถในการทำซ้ำต้องใช้ความสามารถในการใช้คอนเทนเนอร์เพื่อย้ายแอปพลิเคชันจากระบบหนึ่งไปยังอีกระบบหนึ่ง[ 6 ]
การใช้คอนเทนเนอร์ Apptainer ช่วยให้นักพัฒนาสามารถทำงานในสภาพแวดล้อมที่สร้างซ้ำได้ตามที่พวกเขาเลือกและออกแบบ และสภาพแวดล้อมที่สมบูรณ์เหล่านี้สามารถคัดลอกและเรียกใช้บนแพลตฟอร์มอื่นได้อย่างง่ายดาย[ 7 ]
ในปี 2021 ชุมชนของ โครงการโอเพนซอร์ส Singularityได้ลงมติเปลี่ยนชื่อเป็นApptainerและอยู่ภายใต้การดูแลของLinux Foundation [ 8 ]นอกจากนี้ ในปี 2021 บริษัท Sylabs ได้แยก โครงการ Singularity ดั้งเดิมออก มาและเปิดตัวSingularityCE [ 9 ]

ประวัติศาสตร์
| เอกภาวะ | |
|---|---|
ภาพหน้าจอ Singularity รัน คอนเทนเนอร์ " hello world"จากบรรทัดคำสั่ง | |
| ชื่ออื่นๆ | แอปเทเนอร์ |
| ผู้เขียนต้นฉบับ | เกรกอรี เคิร์ตเซอร์ (gmk) และคณะ |
| นักพัฒนา | LBNLและHPCng |
| ปล่อย | 2015 |
| เวอร์ชันสุดท้าย | |
| เขียนเป็น | ไป[ 11 ] |
| ระบบปฏิบัติการ | ลินุกซ์ |
| พิมพ์ | การจำลองเสมือนระดับระบบปฏิบัติการ |
| ใบอนุญาต | ใบอนุญาต BSD 3 ข้อ[ 12 ] |
| เว็บไซต์ | web.archive.org/web/20211129101544/https://singularity.hpcng.org/ |
| ที่เก็บข้อมูล | github.com/apptainer/singularity |
Apptainer เริ่มต้นจากโครงการโอเพนซอร์สSingularityในปี 2015 เมื่อทีมวิจัยที่ห้องปฏิบัติการแห่งชาติลอว์เรนซ์เบิร์กลีย์ นำโดย Gregory Kurtzer ได้พัฒนาเวอร์ชันเริ่มต้นที่เขียนด้วย ภาษาโปรแกรม Cและเผยแพร่[ 13 ]ภายใต้ใบอนุญาต BSD [ 14 ]
ภายในสิ้นปี 2016 นักพัฒนาจากหน่วยงานวิจัยต่างๆ จำนวนมากได้ร่วมมือกับทีมงานที่ห้องปฏิบัติการแห่งชาติลอว์เรนซ์เบิร์กลีย์เพื่อพัฒนา Singularity ต่อไป[ 15 ]
Singularity ดึงดูดความสนใจของสถาบันวิทยาศาสตร์ที่ใช้การคำนวณอย่างหนักทั่วโลกอย่างรวดเร็ว: [ 16 ]
- ศูนย์วิจัยคอมพิวเตอร์ของมหาวิทยาลัยสแตนฟอร์ดได้ติดตั้ง Singularity บนคลัสเตอร์ XStream [ 17 ] [ 18 ]และ Sherlock [ 19 ] ของพวกเขา
- สถาบันสุขภาพแห่งชาติได้ติดตั้ง Singularity บน Biowulf [ 20 ]ซึ่งเป็นคลัสเตอร์ Linux ที่มีคอร์มากกว่า 95,000 คอร์/30 PB [ 21 ]
- ไซต์ต่างๆ ของOpen Science Grid ConsortiumรวมถึงFermilabเริ่มนำ Singularity มาใช้[ 22 ]ภายในเดือนเมษายน 2560 Singularity ได้ถูกนำไปใช้งานบนเครือข่าย Open Science Grid ถึง 60% [ 23 ]
เป็นเวลาสองปีติดต่อกัน ในปี 2016 และ 2017 Singularity ได้รับการยอมรับจากบรรณาธิการของ HPCwire ว่าเป็น "หนึ่งในห้าเทคโนโลยีใหม่ที่น่าจับตามอง" [ 24 ] [ 25 ] ในปี 2017 Singularity ยังได้รับรางวัลชนะเลิศอันดับหนึ่งในหมวดหมู่ "เครื่องมือหรือเทคโนโลยีการเขียนโปรแกรม HPC ที่ดีที่สุด" อีกด้วย[ 25 ]
ณ ปี 2018 จากข้อมูลที่ป้อนโดยสมัครใจในทะเบียนสาธารณะ ฐานผู้ใช้ Singularity คาดว่าจะมีมากกว่า 25,000 การติดตั้ง[ 26 ]และรวมถึงผู้ใช้ในสถาบันการศึกษา เช่นมหาวิทยาลัยโอไฮโอสเตทและมหาวิทยาลัยมิชิแกนสเตทตลอดจนศูนย์ HPC ชั้นนำ เช่นศูนย์คอมพิวเตอร์ขั้นสูงแห่งรัฐเท็กซัสศูนย์ซูเปอร์คอมพิวเตอร์ซานดิเอโกและห้องปฏิบัติการแห่งชาติโอ๊คริดจ์
ในเดือนกุมภาพันธ์ พ.ศ. 2561 บริษัท Sylabs [ 27 ]ซึ่งก่อตั้งโดยผู้เขียน Singularity ได้รับการประกาศ[ 28 ]ว่าจะให้การสนับสนุนเชิงพาณิชย์สำหรับ Singularity ในเดือนตุลาคมของปีนั้น Sylabs ได้ออกเวอร์ชัน 3.0.0 [ 29 ]ซึ่งเป็นการเขียนใหม่ด้วยภาษาโปรแกรม Go
การแยก Apptainer / Singularity
| ซิงกูลาริตี้ซี | |
|---|---|
| ผู้เขียนต้นฉบับ | เกรกอรี เคิร์ตเซอร์ (gmk) และคณะ |
| นักพัฒนา | ไซแล็บส์ |
| ปล่อย | 4 พฤษภาคม 2564 |
| เวอร์ชันเสถียร | |
| เขียนเป็น | ไป[ 31 ] |
| ระบบปฏิบัติการ | ลินุกซ์ |
| พิมพ์ | การจำลองเสมือนระดับระบบปฏิบัติการ |
| ใบอนุญาต | ใบอนุญาต BSD 3 ข้อ[ 32 ] |
| เว็บไซต์ | sylabs.io/singularity/ |
| ที่เก็บข้อมูล | github.com/sylabs/singularity |
ในเดือนพฤษภาคม 2020 Gregory Kurtzer ออกจาก Sylabs แต่ยังคงดำรงตำแหน่งผู้นำโครงการโอเพนซอร์ส Singularity ต่อไป[ 33 ]ในเดือนพฤษภาคม 2021 Sylabs ได้แยกโครงการ ออกมา [ 9 ]และตั้งชื่อว่า SingularityCE [ 34 ] [ 35 ]ในเดือนพฤศจิกายน 2021 โครงการโอเพนซอร์ส Singularity ได้เข้าร่วมกับLinux Foundation [ 36 ]และเปลี่ยนชื่อเป็นApptainer [ 37 ]
คุณสมบัติ
Apptainer สามารถรองรับการเชื่อมต่อประสิทธิภาพสูงโดยธรรมชาติ เช่นInfiniBand [ 38 ]และ Intel Omni-Path Architecture (OPA) [ 39 ]
เช่นเดียวกับการรองรับอุปกรณ์ InfiniBand และ Intel OPA Apptainer สามารถรองรับ อุปกรณ์ที่เชื่อมต่อ PCIe ใดๆ ภายในโหนด ประมวลผล เช่นตัวเร่งกราฟิก [ 40 ]
Apptainer ยังรองรับไลบรารีOpenMPI ในตัว โดยใช้แนวทางคอนเทนเนอร์ MPI แบบไฮบริดซึ่ง OpenMPI มีอยู่ทั้งภายในและภายนอกคอนเทนเนอร์[ 38 ]
คุณสมบัติเหล่านี้ทำให้ Apptainer มีประโยชน์มากขึ้นเรื่อยๆ ในด้านต่างๆ เช่นการเรียนรู้ของเครื่องการเรียนรู้เชิงลึกและภาระงานที่ใช้ข้อมูลจำนวนมาก ซึ่งแอปพลิเคชันจะได้รับประโยชน์จากลักษณะแบนด์วิดท์สูงและความหน่วงต่ำของเทคโนโลยีเหล่านี้[ 41 ]
การบูรณาการ
โดยทั่วไปแล้ว ระบบ HPCจะมีระบบการจัดการทรัพยากรและการจัดตารางงานอยู่แล้ว ดังนั้นสภาพแวดล้อมการทำงานของคอนเทนเนอร์จึงต้องถูกรวมเข้ากับตัวจัดการทรัพยากรของระบบที่มีอยู่เดิม
การใช้โซลูชันคอนเทนเนอร์ระดับองค์กรอื่นๆ เช่นDockerในระบบ HPC จะต้องมีการปรับเปลี่ยนซอฟต์แวร์[ 42 ]คอนเทนเนอร์ Docker สามารถแปลงเป็นไฟล์ Apptainer แบบสแตนด์อะโลนได้โดยอัตโนมัติ จากนั้นจึงส่งไปยังตัวจัดการทรัพยากร HPC [ 43 ]
Apptainer ผสานรวมเข้ากับตัวจัดการทรัพยากรหลายตัวได้อย่างราบรื่น[ 44 ]รวมถึง:
- HTCondor [ 45 ]
- Oracle Grid Engine (SGE)
- SLURM (ยูทิลิตี้ Linux อย่างง่ายสำหรับการจัดการทรัพยากร)
- TORQUE (Terascale Open-source Resource and QUEue Manager)
- พีบีเอส โปร (พีบีเอส โปรเฟสชันแนล)
- HashiCorp Nomad (เครื่องมือจัดการภาระงานที่เรียบง่ายและยืดหยุ่น)
- IBM Spectrum LSF [ 46 ]
ดูเพิ่มเติม
อ่านเพิ่มเติม
- รายงานการประชุมวิชาการนานาชาติครั้งที่ 10 ว่าด้วยการประมวลผลแบบยูทิลิตี้และคลาวด์: เทคโนโลยีคอนเทนเนอร์แบบอิงจุดเอกภาพพร้อมสำหรับการใช้งานแอปพลิเคชัน MPI บนคลาวด์ HPC แล้วหรือยัง?
- Singularity เตรียมเปิดตัวเวอร์ชัน 3.0 และใกล้จะให้บริการคอนเทนเนอร์ครบ 1 ล้านตู้ต่อวันแล้ว
- Dell HPC: การแปลงแอปพลิเคชัน HPC ให้เป็นคอนเทนเนอร์ด้วย Singularity
- งานประชุมนักพัฒนา Intel HPC ปี 2017: บทนำสู่การประมวลผลประสิทธิภาพสูง (HPC) คอนเทนเนอร์ และ Singularity
- HPCwire ประกาศรายชื่อผู้ชนะรางวัล Readers' and Editors' Choice Awards ประจำปี 2017 ในงาน SC17 Conference ที่เมืองเดนเวอร์: Singularity ได้รับรางวัลในหมวดหมู่เครื่องมือหรือเทคโนโลยีการเขียนโปรแกรม HPC ยอดเยี่ยม
ลิงก์ภายนอก
- เว็บไซต์อย่างเป็นทางการ

- Sylabs SingularityCE
- Singularity@HPCngบนWayback Machine (เก็บถาวรเมื่อ 2021-11-29)
- โค้ด Singularity ดั้งเดิมบนGitHubจนถึงเวอร์ชัน 3.8.7 ณ วันที่ 16 มีนาคม 2022 (รวมถึงเวอร์ชัน C ก่อน 3.0)
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ แอปเทเนอร์
Apptainer (เดิม ชื่อ Singularity ) เป็น โปรแกรมคอมพิวเตอร์ โอเพนซอร์ส ฟรี ที่ทำการ จำลอง เสมือนระดับระบบปฏิบัติการ หรือที่เรียกว่า คอนเทนเนอร์ [ 4 ]
ประวัติศาสตร์
Apptainer เริ่มต้นจาก โครงการโอเพนซอร์ส Singularity ในปี 2015 เมื่อทีมวิจัยที่ ห้องปฏิบัติการแห่งชาติลอว์เรนซ์เบิร์กลี ย์ นำโดย Gregory Kurtzer ได้พัฒนาเวอร์ชันเริ่มต้นที่เขียนด้วย ภาษาโปรแกรม C และเผยแพร่ [ 13 ] ภายใต้ใบ อนุญาต BSD [ 14 ]
การแยก Apptainer / Singularity
ในเดือนพฤษภาคม 2020 Gregory Kurtzer ออกจาก Sylabs แต่ยังคงดำรงตำแหน่งผู้นำโครงการโอเพนซอร์ส Singularity ต่อไป [ 33 ] ในเดือนพฤษภาคม 2021 Sylabs ได้ แยก โครงการ ออกมา [ 9 ] และตั้งชื่อว่า SingularityCE [ 34 ] [ 35 ] ในเดือนพฤศจิกายน 2021 โครงการโอเพนซอร์ส...
คุณสมบัติ
Apptainer สามารถรองรับการเชื่อมต่อประสิทธิภาพสูงโดยธรรมชาติ เช่น InfiniBand [ 38 ] และ Intel Omni-Path Architecture (OPA) [ 39 ]