Bioinformatics

ARCHER-LD ใช้ GPU คำนวณความเชื่อมโยงทางพันธุกรรม จาก 22.7 ชั่วโมงเหลือ 49 นาที

เผยแพร่ · · แสดงความคิดเห็น

สารบัญบทความ

ข้อมูลจีโนมขนาดใหญ่ไม่ได้ติดข้อจำกัดเฉพาะการอ่าน DNA แต่ยังรวมถึงเวลาที่ใช้วิเคราะห์ด้วย ทีมวิจัยจาก University of Pennsylvania และ Argonne National Laboratory พัฒนา ARCHER-LD ซอฟต์แวร์ที่แบ่งงานให้ GPU หลายตัวช่วยคำนวณความเชื่อมโยงระหว่างตำแหน่งแปรผันของ DNA โดยการทดสอบกับข้อมูลโครโมโซม 1 จาก Penn Medicine Biobank ใช้เวลา 49 นาที เทียบกับ 22.7 ชั่วโมงของ PLINK ภายใต้เงื่อนไขที่ผู้วิจัยทดสอบ [1]

ทำไมต้องรู้ว่าตำแหน่งใดใน DNA สัมพันธ์กัน

ความแปรผันของ DNA บางตำแหน่งมีแนวโน้มพบร่วมกันในประชากรมากกว่าที่คาดหากเป็นอิสระต่อกัน ความสัมพันธ์นี้เรียกว่า linkage disequilibrium หรือ LD นักวิจัยใช้ข้อมูลดังกล่าวประกอบการวิเคราะห์ เช่น ช่วยแยกว่าความแปรผันใดน่าจะเกี่ยวข้องกับโรค เมื่อหลายตำแหน่งให้สัญญาณทางสถิติคล้ายกัน

ปัญหาคือ เมื่อจำนวนตำแหน่งเพิ่มขึ้น จำนวนคู่ที่ต้องเปรียบเทียบเพิ่มขึ้นอย่างรวดเร็ว งานวิจัยจึงมักใช้ข้อมูล LD จากชุดอ้างอิงภายนอกแทนการคำนวณจากผู้เข้าร่วมของตนเอง การคำนวณได้เร็วขึ้นอาจช่วยให้ใช้ข้อมูลที่ตรงกับประชากรที่ศึกษามากขึ้น โดยเฉพาะกลุ่มที่มีตัวแทนน้อยในฐานข้อมูลอ้างอิง [1]

แบ่งข้อมูลเป็นก้อน แล้วให้ GPU ช่วยกันคำนวณ

ARCHER-LD จัดรูปการคำนวณ LD ให้เป็นงานพีชคณิตเชิงเส้นที่ GPU ประมวลผลได้ดี จากนั้นแบ่งข้อมูลเป็นบล็อกและกระจายให้ GPU หลายตัวทำงานพร้อมกัน ดังภาพที่ 1 ด้านซ้ายแบ่งข้อมูลเป็นก้อน A, B และ C ส่วนด้านขวาแสดงคู่บล็อกที่นำมาคำนวณ โดยทำเฉพาะครึ่งบนของเมทริกซ์ เพราะส่วนสีเทามีข้อมูลสมมาตรที่ไม่ต้องคำนวณซ้ำ [1]

แผนภาพแบ่งข้อมูลพันธุกรรมเป็นบล็อก A B C แล้วจับคู่บล็อกเพื่อคำนวณเมทริกซ์ LD เฉพาะครึ่งบน
ภาพที่ 1 | การแบ่งข้อมูลเป็นบล็อกเพื่อคำนวณ LD แบบขนาน (Kumar et al., Bioinformatics, 2026, btag783)

กระบวนการมีสามช่วง ได้แก่ เตรียมข้อมูลให้อ่านเป็นบล็อกได้ คำนวณ LD ด้วย GPU แล้วรวบรวมผลเข้าด้วยกัน งานเตรียมข้อมูลและรวบรวมผลยังใช้ CPU อยู่ ความเร็วของระบบจึงขึ้นกับทั้ง GPU หน่วยความจำ และการอ่านเขียนข้อมูล ไม่ได้ขึ้นกับจำนวน GPU เพียงอย่างเดียว [2]

เร็วขึ้นแค่ไหน ต้องดูว่าทดสอบกับอะไร

ในการทดสอบกับ Penn Medicine Biobank จำนวน 57,170 ตัวอย่าง ผู้วิจัยเปรียบเทียบเวลาคำนวณ LD ของโครโมโซม 1 และ 22 แยกกัน ได้ผลดังตาราง [1]

ข้อมูล Penn Medicine Biobank (57,170 ตัวอย่าง)ARCHER-LDPLINK 2.0
โครโมโซม 1: 1,380,131 ตำแหน่งแปรผัน49 นาที 13 วินาที22 ชั่วโมง 40 นาที 28 วินาที
โครโมโซม 22: 326,449 ตำแหน่งแปรผัน5 นาที 15 วินาที1 ชั่วโมง 41 นาที 5 วินาที

ผลโครโมโซม 1 คิดเป็นความเร็วประมาณ 27.6 เท่า หรือปัดเป็น 28 เท่า โดย ARCHER-LD ใช้ NVIDIA B200 จำนวน 8 ตัว ส่วน PLINK 2.0 ใช้ CPU AMD EPYC 9374 แบบ 64 เธรดและ RAM 256 GB ตัวเลขนี้จึงเป็นผลภายใต้ระบบที่ผู้วิจัยทดสอบ ไม่ใช่ความเร็วที่ได้จาก GPU ทั่วไปเพียงตัวเดียว [1]

ผู้วิจัยยังระบุว่าการเปรียบเทียบข้อมูลที่ยังไม่ได้แยกว่าความแปรผันอยู่บนโครโมโซมชุดใด หรือ unphased นี้ ไม่ใช่การเทียบแบบหนึ่งต่อหนึ่ง เพราะสองโปรแกรมคำนวณสถิติ LD ต่างนิยามกัน จึงไม่ควรนำตัวเลข 28 เท่าไปเหมารวมกับทุกข้อมูลหรือทุกเครื่อง และไม่ใช่เวลาวิเคราะห์จีโนมทั้งชุดทุกขั้นตอน [1]

งานนี้เป็นการทดสอบเครื่องมือคำนวณ ไม่ใช่การทดลองวินิจฉัยหรือรักษาโรค ประโยชน์ที่แสดงโดยตรงคือการลดเวลาคำนวณ LD ส่วนการเพิ่มความแม่นยำของข้อสรุปทางการแพทย์ยังต้องประเมินในงานที่นำผลไปใช้ต่อ

ARCHER-LD เปิดซอร์สโค้ดภายใต้ Apache License 2.0 ผู้สนใจดูวิธีติดตั้งและข้อกำหนดได้จากโครงการ ปัจจุบันเครื่องมือพึ่งพา CuPy และ CUDA จึงรองรับ NVIDIA GPU เป็นหลัก ภาพที่ 2 แสดงหน้าโครงการบน GitHub ซึ่งรวมไฟล์โค้ดและคู่มือเริ่มต้นใช้งานไว้ด้วยกัน [2]

หน้า GitHub ของ rachitk/ARCHER-LD แสดงไฟล์ซอร์สโค้ด ใบอนุญาต Apache-2.0 และส่วน README
ภาพที่ 2 | หน้าโครงการ ARCHER-LD บน GitHub (ที่มา: rachitk/ARCHER-LD, บันทึกภาพ 26 ตุลาคม 2026)

อ้างอิง

1. Kumar R, Singhal P, Zhang D, et al. ARCHER-LD: Rapid Long-Range Linkage Disequilibrium Calculations at Biobank Scale using GPU Acceleration. Bioinformatics. 2026 Oct 19:btag783. Accepted manuscript. https://doi.org/10.1093/bioinformatics/btag783

2. Kumar R, et al. ARCHER-LD: project documentation and source code [Internet]. GitHub; accessed 2026 Oct 26. https://github.com/rachitk/ARCHER-LD

กลับไปสารบัญบทความ ↑

แสดงความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *

This site uses Akismet to reduce spam. Learn how your comment data is processed.