เริ่มต้นใช้งาน • กำหนดค่า • ชุมชน • การสนับสนุน • คู่มือบรรจุภัณฑ์
Spack เป็นตัวจัดการแพ็คเกจหลายแพลตฟอร์มที่สร้างและติดตั้งซอฟต์แวร์หลายเวอร์ชันและการกำหนดค่า มันใช้งานได้บน Linux, macOS, Windows และซูเปอร์คอมพิวเตอร์หลายตัว Spack ไม่ทำลายล้าง: การติดตั้งเวอร์ชันใหม่ของแพ็คเกจจะไม่ทำให้การติดตั้งที่มีอยู่เสียหาย ดังนั้นการกำหนดค่าต่างๆ ของแพ็คเกจเดียวกันจึงสามารถอยู่ร่วมกันได้
Spack เสนอไวยากรณ์ "spec" ง่ายๆ ที่ให้ผู้ใช้สามารถระบุเวอร์ชันและตัวเลือกการกำหนดค่าได้ ไฟล์แพ็คเกจเขียนด้วย Python ล้วนๆ และข้อกำหนดช่วยให้ผู้เขียนแพ็คเกจเขียนสคริปต์ตัวเดียวสำหรับบิลด์ที่แตกต่างกันมากมายของแพ็คเกจเดียวกัน ด้วย Spack คุณสามารถสร้างซอฟต์แวร์ของคุณ ได้ ตามที่คุณต้องการ
ดูภาพรวมคุณสมบัติสำหรับตัวอย่างและไฮไลท์
หากต้องการติดตั้ง spack และแพ็คเกจแรก ตรวจสอบให้แน่ใจว่าคุณมี Python และ Git แล้ว:
$ git clone -c feature.manyFiles=true --depth=2 https://github.com/spack/spack.git
$ cd spack/bin
$ ./spack install zlib
เคล็ดลับ
-c feature.manyFiles=true
ปรับปรุงประสิทธิภาพของ git บนที่เก็บที่มีมากกว่า 1,000 ไฟล์
--depth=2
ตัดประวัติ git เพื่อลดขนาดของการติดตั้ง Spack
มี เอกสารฉบับเต็ม หรือเรียกใช้ spack help
หรือ spack help --all
สำหรับสูตรโกงเกี่ยวกับไวยากรณ์ Spack ให้รัน spack help --spec
เรามี การสอนแบบลงมือปฏิบัติจริง โดยครอบคลุมการใช้งานขั้นพื้นฐานถึงขั้นสูง บรรจุภัณฑ์ คุณลักษณะของนักพัฒนา และการปรับใช้ HPC ขนาดใหญ่ คุณสามารถทำแบบฝึกหัดทั้งหมดบนแล็ปท็อปของคุณเองได้โดยใช้คอนเทนเนอร์ Docker
คุณสามารถใช้สื่อเหล่านี้เพื่อสอนผู้ใช้ในองค์กรของคุณเกี่ยวกับ Spack
Spack เป็นโครงการโอเพ่นซอร์ส ยินดีต้อนรับคำถาม การอภิปราย และการมีส่วนร่วม การสนับสนุนอาจเป็นอะไรก็ได้ตั้งแต่แพ็คเกจใหม่ไปจนถึงการแก้ไขข้อบกพร่อง เอกสารประกอบ หรือแม้แต่ฟีเจอร์หลักใหม่
ทรัพยากร:
@mention
เราด้วยนะ! การมีส่วนร่วมกับ Spack นั้นค่อนข้างง่าย เพียงส่งคำขอดึงถึงเรา เมื่อคุณส่งคำขอ ให้ develop
สาขาปลายทางบนที่เก็บ Spack
PR ของคุณจะต้องผ่านการทดสอบหน่วยและการทดสอบเอกสารของ Spack และต้องเป็นไปตามมาตรฐาน PEP 8 เราบังคับใช้แนวทางเหล่านี้ด้วยกระบวนการ CI ของเรา หากต้องการดำเนินการทดสอบเหล่านี้ภายในเครื่อง และสำหรับเคล็ดลับที่เป็นประโยชน์เกี่ยวกับ git โปรดดูคู่มือการมีส่วนร่วมของเรา
สาขา develop
ของ Spack ได้รับการสนับสนุนล่าสุด คำขอดึงข้อมูลควรกำหนดเป้าหมายไป develop
และผู้ใช้ที่ต้องการเวอร์ชันแพ็คเกจ คุณลักษณะล่าสุด ฯลฯ สามารถใช้ develop
ได้
สำหรับการปรับใช้ไซต์ที่มีผู้ใช้หลายคนหรือกรณีการใช้งานอื่น ๆ ที่ต้องการการติดตั้งซอฟต์แวร์ที่เสถียรมาก เราขอแนะนำให้ใช้รุ่นที่เสถียรของ Spack
แต่ละซีรีส์การเผยแพร่ Spack ยังมีสาขาที่สอดคล้องกัน เช่น releases/v0.14
มีเวอร์ชัน Spack 0.14.x
และ releases/v0.13
มีเวอร์ชัน 0.13.x
เราสนับสนุนการแก้ไขข้อบกพร่องที่สำคัญในสาขาเหล่านี้ แต่เราไม่ได้พัฒนาเวอร์ชันแพ็คเกจหรือทำการเปลี่ยนแปลงอื่น ๆ ที่จะเปลี่ยนแปลงวิธีที่ Spack สรุปการขึ้นต่อกันภายในสาขาที่เผยแพร่ ดังนั้น คุณสามารถวางฐานการปรับใช้ Spack ของคุณบน Release Branch และ git pull
เพื่อรับการแก้ไข โดยไม่ต้องมีแพ็กเกจปั่นที่มาพร้อมกับ develop
รุ่นล่าสุดจะพร้อมใช้งานเสมอพร้อมกับ releases/latest
ดูเอกสารเกี่ยวกับการเผยแพร่สำหรับรายละเอียดเพิ่มเติม
โปรดทราบว่า Spack มี หลักปฏิบัติ การเข้าร่วมในชุมชน Spack แสดงว่าคุณตกลงที่จะปฏิบัติตามกฎเกณฑ์
ขอบคุณมากสำหรับผู้ร่วมให้ข้อมูลของ Spack
Spack สร้างขึ้นโดย Todd Gamblin, [email protected]
หากคุณกำลังอ้างอิงถึง Spack ในสิ่งพิมพ์ โปรดอ้างอิงเอกสารต่อไปนี้:
บน GitHub คุณสามารถคัดลอกการอ้างอิงนี้ในรูปแบบ APA หรือ BibTeX ได้โดยใช้ปุ่ม "อ้างอิงที่เก็บนี้" หรือดูความคิดเห็นใน CITATION.cff
สำหรับ BibTeX แบบดิบ
Spack ได้รับการเผยแพร่ภายใต้เงื่อนไขของทั้งใบอนุญาต MIT และใบอนุญาต Apache (เวอร์ชัน 2.0) ผู้ใช้อาจเลือกใบอนุญาตอย่างใดอย่างหนึ่งตามตัวเลือกของตน
การสนับสนุนใหม่ทั้งหมดจะต้องดำเนินการภายใต้ใบอนุญาตทั้ง MIT และ Apache-2.0
ดู LICENSE-MIT, LICENSE-APACHE, ลิขสิทธิ์ และประกาศ สำหรับรายละเอียด
SPDX-ใบอนุญาต-ตัวระบุ: (Apache-2.0 หรือ MIT)
LLNL-รหัส-811652