Special Report

วันนึ้เริ่มต้นเขียนรายงานโครงการเพื่อชาติกันหน่อยว่าทีมงานทำไปถึงไหนแล้ว ? สถาปัตยกรรมที่ใช้เป็นอย่างไร ? แนวทางการแก้ปัญหาที่เกิดขึ้น ? โดยมีหน่วยงานที่เกี่ยวข้องเพื่อสนับสนุนงานนี้ได้แก่

ระบบนี้แต่ก่อนประมวลผลด้วยโปรแกรมจำลองแบบลำดับชื่อ TUNAMI (Tohoku University Numerical Analysis Model for Investigation of tsunamis) ซึ่งใช้เวลาประมวลผลประมาณ 6-8 ชั่วโมง ปัจจุบันเราสามารถพัฒนาให้ประมวลผลแบบขนานบนคอมพิวเตอร์สมรรถนะสูงด้วยเวลาเพียง 35-40 นาที ทำให้แนวคิดการเตือนภัยล่วงหน้าก่อนที่คลื่นจะเข้าถึงชายฝั่งมีแนวโน้มเป็นจริงได้ (Realtime Simulation)

ปัญหาที่ถือว่าท้าทายไม่แพ้กันคือ ผลจากการจำลองจะได้จำนวนไฟล์ปริมาณมาก และมีขนาดไฟล์โดยประมาณ 30 GB ต่อ การจำลองหนึ่งครั้ง ทำให้การถ่ายโอนไฟล์จากเครื่องคอมพิวเตอร์สมรรถนะสูง (ทั้งที่ Tsubame และ Tera) ไปยังเครื่องเซิร์ฟเวอร์สำหรับทำ Visualization เพื่อทำภาพเสมือนจริงสามมิติ และท้ายสุดคือส่งผลลัพธ์ไปยังระบบพอร์ทัลเพื่อออกประกาศเตือนภัยเป็นจะไปไม่ได้เลยในเวลาที่จำกัด เนื่องจากแม้ว่าจะประมวลผลโปรแกรมจำลองแค่ 35-40 นาทีแต่เวลาในการทำภาพเสมือนจริงนั้นยาวนานไม่แพ้กัน

ดังนั้นขณะนี้เราจึงเปลี่ยนกลยุทธ์จากการทำ Visualization แบบลำดับไปเป็นแบบขนานอย่างง่าย ด้วยเห็นผลที่ว่าภาพเสมือนจริงแต่ละภาพไม่ขึ้นต่อกัน ดังนั้นจึงเป็นเรื่องที่ง่ายมากที่จะจับคู่ 1-50 ภาพต่อ 1 processor ซึ่งตอนนี้กำลังพัฒนาอยู่ครับ

สำหรับการเตือนภัยคลึ่นสึนามิในประเทศไทยเมื่อเกิดแผ่นเดินไหวใต้ท้องทะเล มีระยะเวลาไม่เกิน 90 นาที โดยมีช่วงเวลาดังนี้

  • รวบรวมข้อมูลแผ่นดินไหว (~10 นาที)
  • จำลองสถานการณ์ด้วยโปรแกรมคอมพิวเตอร์ (น้อยกว่า 50 นาที)
  • วิเคราะห์ผมลัพธ์และออกประกาศเตือนภัย (~10 นาที)
  • เตือนภัยและอพยพประชาชนออกจากพื้นที่เสี่ยงภัย (20 นาที)

ยังมีเรื่องราวของการทำ precomputed database สำหรับฐานข้อมูลการเตือนภัยคลื่นสึนามิล่วงหน้า (อ้างอิงตามรอยแยกของแผ่นเปลือกโลก) ที่จะอัปเดทให้ภายหลังครับ

ปล. คงพูดได้เต็มปากเต็มคำว่า ทีมงาน blognone นี่ใจกว้างดีแท้ ที่ให้ทั้งคนอ่านคนเขียนเข้ามาร่วมหมกมุ่นชุมนุม จนกลายเป็นชุมชนใหญ่โตและมีเหยี่ยวข่าวไอทีที่มีศักยภาพชนิด "ไทยทำไทยใช้ไทยเจริญ" กันเลยทีเดียว ไม่ว่าจะเป็นข่าวระดับนานาชาติ หรือ ระดับชาติ ก็หาอ่านกันง่ายผ่านเว็บที่นี่ที่เดียว ขอบคุณครับ

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

lew Sat, 18/10/2008 - 03:19

ย่อหน้าแรกเอาไว้เป็น ปล. หรือใส่เป็นคอมเมนต์ดีกว่านะครับ เวลาคนอ่านจะได้เห็นเนื้อหาเลย

แต่ยังไงก็ขอรับคำชมไว้ครับ :D

LewCPE

mindpeterpan Sat, 18/10/2008 - 04:05

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

ส่วนการซ้อม ฯ ก็เป็นอีกกระบวนการหนึ่งครับ ^.^ ระบบบอกเพียงว่าต้องอพยพไปไกลเท่าไหร่ ที่ไหน ? เมื่อไหร่ ? ของพื้นที่เสี่ยงภัยถึงจะปลอดภัย และคลื่นสูง ณ ชายฝั่งเพียงใด ? พร้อมกับมีภาพเคลื่อนไหวสามมิติเสมือนจริงให้ดูประกอบเป็นแนวทางการอพยพด้วยครับ

คงต้องช่วยกันหลายฝ่าย "อย่างคนมีกึ๋น" เค้าทำกัน :)

Conductor Sat, 18/10/2008 - 12:37

mk ส่งข่าวนี้ให้ดูเมื่อวานแต่ไม่มีเวลาให้ความเห็น

  1. ด้วยสมการคลื่น สามารถจำลองการเคลื่อนที่ของคลื่นสึนามิด้วยโน๊ตบุ๊คธรรมดา มีการตรวจสอบกับโมเดลที่ใช้คอมพิวเตอร์สมรรถนะสูงคำนวณแล้วหลายๆอันทั่วโลก แต่ก็มีพารามิเตอร์สำคัญคือ DEM ของพื้นทะเล (ความลึก) -- [อ้างอิง]
  2. โอกาสเกิดแผ่นดินไหวรุนแรงนั้น อยู่ในรอยแยกในทะเลอันดามันซึ่งรู้พิกัดแน่นอน สามารถจำลองเวลาการแพร่กระจายคลื่นไว้ก่อนล่วงหน้าได้หากรู้พิกัดของศูนย์กลางแผ่นดินไหว (epicenter) และสามารถทำเป็นตารางเวลาคลื่อนเข้าฝั่งที่ตำบลต่างๆ เทียบกับพิกัดของ epicenter ไว้ล่วงหน้าได้
  3. มีศูนย์ศึกษาแผ่นดินไหวบางแห่งที่เริ่มคำนวณแก้ moment tensor และ centroid depth เพื่อหาตำแหน่งคร่าวๆ ของ epicenter เมื่อได้รับข้อมูลจากสถานีวัดแผ่นดินไหวเพียง 25 สถานี เช่น geofon ใช้เวลาประมาณ 5 นาที -- ข้อมูลนี้ถึงจะไม่เที่ยงตรงก็ไม่เป็นไร แต่ทำให้สามารถประเมินความแรงและความลึก ว่ามีโอกาสเกิดสึนามิมากน้อยแค่ไหน
  4. ปัจจุบันศูนย์เตือนภัยพิบัติแห่งชาติใช้วิธีการนี้อยู่ เนื่องจากไม่ต้องการนำชีวิตคนไปเสี่ยง ยิ่งเตือนได้เร็ว ก็จะยิ่งอพยพได้เร็ว

mindpeterpan Sat, 18/10/2008 - 13:27

In reply to by Conductor

เยี่ยมครับ ได้ข้อมูลเพิ่มขึ้นอีก นอกเหนือจากระบบจะประมวลผลแบบ real time แล้ว ในเบื้องต้นยังอ้างอิงฐานข้อมูลคลื่นสึนามิที่คำนวณผลล่วงหน้าไว้ก่อนที่จะเกิดขึ้นจริง (ตามข้อ 2. ที่คุณ Conductor ได้กล่าวไว้ครับ) แนวทางคือทดลองด้วยการจำลองตามรอยแยกจำนวน 800 กรณีโดยประมาณ ซึ่่งเชื่อว่าครอบคลุมสำหรับประเทศไทย (โดยปรกติการทดลองจะเทียบผลการทดลองกับเหตุการณ์จริงที่เกิดขึ้นอย่างที่ภูเก็ตล่าสุดครับ)

ฐานข้อมูล (Precomputed database) เป็นส่วนที่ช่วยให้ตัดสินใจได้เร็วขึ้นเพื่อออกประกาศเตือนภัย ขณะเดียวกันเราก็ประมวลผลแบบ real time ไปในตัวด้วย เพื่อรับรองการเตือนภัยเหล่านั้น

ผลิตผลที่น่าสนใจจากโครงการนี้คือ การทำ Inundation Map ที่สามารถระบุพื้นที่ชัดเจนผ่านการแสดงผลด้วยภาพสามมิติเสมือนจริง ไม่เพียงคำกล่าวหรือหนังสือประกาศเตือนภัย แต่ประชาชนติดตามข้อมูลได้ทันท่วงที (หากรวมเข้ากับแผนที่ของ Google Earth หรือ Point Asia ได้ก็คงดี ซึ่งเป็นแผนงานในอนาคต)

ระบบไม่เพียงใช้เฉพาะการจำลองสึนามิเท่านั้น เพราะ skeleton ลักษณะนี้ใช้ได้กับการเตือนภัยอย่างอื่นเช่น ดินถล่ม น้ำท่วม และอย่างอื่นเท่าที่สามารถนำมาพิจารณาได้ ขึ้นอยู่กับว่าจะเอาอะไรมาใส่ :)

somsak_sr Sun, 19/10/2008 - 01:26

In reply to by mindpeterpan

โอ๊ะๆ ดีจังครับที่งานคืบหน้าไปได้ด้วยดี

อยากจะถามว่ารัน 50 นาทีนี่ต้องใช้กี่โหนดถึงจะทันเหรอครับ

mindpeterpan Sun, 19/10/2008 - 02:25

In reply to by somsak_sr

เท่าที่จำได้รันที่ Tsubame ใช้ 300 กว่าโหนดครับ (ส่วนนี้อีกทีมนึงเค้าจะดูแลอยู่)
กำลังเอาไปทดสอบที่ Thaigrid ครับ รู้สึกว่าจะต้องปรับเรื่องคอมไพเลอร์ภาษาฟอร์เทรนนิดหน่อยเกี่ยวกับทศนิยมครับ และ code optimization (และจะมารายงานให้ทราบครับว่าเวลาที่ใช้เป็นเช่นไร)

ขณะนี้งานส่วนใหญ่ที่รันที่ Thaigrid จะเป็นการทดสอบโปรแกรมแบบ sequential มากกว่า และเก็บข้อมูลไปในตัว ตอนนี้กำลังโอนย้ายงานที่ Tsubame มาที่ Thaigrid เพราะที่ Tsubame จะปิดปรับปรุงเกี่ยวกับเครือข่ายและ N1GE ครับ

โปรแกรมจำลองจะมี 4 resolution ครับเริ่มตั้งแต่การคำนวณความลำเอียดต่ำใน region นอกสุด และในสุด ณ ตำแหน่งที่เป็น observation area จะเป็นความละเอียดสูงครับ ส่วนนี้ก็ใช้จำนวนโหนดเยอะหน่อย พูดถึง input ก็มีแค่ 30 MB กว่าๆ เทียบกับ output 30 GB ครับ (ยอมรับว่าปวดหัวเหมือนกันกับ output ขนาดนี้ T_T)

โอ้โห 300 เครื่องนี่ TERA คงให้ไม่ได้นะครับเพราะมีแค่ 192 เครื่องเอง :) แต่ถ้า 300 CPU น่าจะพอได้ครับ (75 เครื่อง) แต่ผมว่าคงนานเหมือนกันกว่าจะได้รันเพราะคิวงานค่อนข้างเยอะทีเดียว (ถึงจะอยู่ special แต่มันก็ต้องรองานทีได้รันไปแล้วเสร็จก่อนครับ) อาจจะต้องมาดูเรื่องประมาณว่าถ้าเกิดแผ่นดินไหวจริงๆจะมีกระบวนการอะไรยังไงเป็นพิเศษไหมครับ

mindpeterpan Sun, 19/10/2008 - 12:38

คืออย่างนี้ครับพี่ 300 กว่า CPU (ขอโทษครับพิมพ์ผิด)อยู่ที่ 32-35 นาที และที่ทำการทดลองมันเป็น case ที่ซับซ้อนมาก มี region ที่ซ้อนกันเยอะ สำคัญคือ เราเคยมีปัญหาที่แก้ไม่ตกในเรื่อง inter-network connection ระหว่างโหนดตอนใช้ที่ TERA ครับ แต่ในความเป็นจริงเมื่อเกิดแผ่นดินไหวคงไม่ถึง 300 cpu ครับเพราะน่าจะแบ่งงานให้ balance เยอะขึ้น ตอนนี้ที่รัน 300 CPU ก็ยังใช้ CPU ไม่คุ้มค่าเท่าไหร่ครับ

มีประการที่น่าจะต้องพิจารณาเร่งด่วนดังนี้ครับ

  1. ความเร็วเครือข่ายภายใน
  2. พื้นที่ฮาร์ดดิส ตอนนี้หมดแล้วครับ เกินโควต้าไปเรียบร้อย (กำลังซื้อเพิ่ม)
  3. กลยุทธ์ในการถ่ายโอนข้อมูลระหว่าง TERA และระบบพอร์ทัล (อนาคตผมก็ไม่ทราบว่าผู้ใหญ่เค้าจะเอาไปไว้ที่ไหน และถ้าถ่ายโอนได้เร็วก็ยิ่งดีมากๆ)
  4. ขนาดไฟล์ 30 GB ต่อ 1 case ก็จริง แต่ visualization ก็ต้องประมาณ 30 GB ด้วย เพราะข้อมูล output จาก simulation ยังเอามาทำ visualization ไม่ได้ ต้องผ่านขั้นตอน data transformation ก่อนซึ่งจะทำให้ data ดังกล่าวมี reusability ที่ดีมากครับ

mindpeterpan Mon, 20/10/2008 - 12:28

In reply to by sugree

ช่วงแรกที่ทดสอบเราใช้ Tsubame ได้รับผลที่ดีครับ (เนื่องจากตอนนั้นเรายังไม่ได้ติดต่อขอใช้ Thaigrid) เวลาที่ใช้อยู่ภายใน 50 นาที

จากนั้นเริ่มทดสอบที่ Thaigrid พบปัญหานิดนึงเช่น Intel FORTRAN Compiler เวอร์ชันต่างจากของ Tsubame และความเร็วในการส่ง message ระหว่างโหนดต่างจาก Tsubame แต่เราก็ตรวจสอบและจัดการกับการส่ง message ใหม่ ทำให้การรับส่งข้อมูลระหว่างโหนดน้อยลง

วันพุธที่ 22 นี้จะทดสอบที่ Thaigrid อีกครั้งครับ รัน case ที่มีความสูงคลื่นแบบ extreme ซึ่งจะทำให้เห็นผลชัดเจนว่า ปัญหาของ Compiler กับจุดทศนิยมของ Thaigrid และ Tsubame มีส่วนทำให้ผลคาดเคลื่อนหรือไม่

ส่วนเรื่องเวลาที่เกี่ยวข้องกับการส่งข้อมูลระหว่างโหนด จะนำมาบอกต่อให้ฟังครับ ตอนนี้ Focus ไปที่ผลการทดลองซึ่งน่าจะให้ผลการทดลองใกล้เคียงกับ Code แบบ Sequential การที่เราอ้างอิงผลกับแบบ sequential เนื่องจากผลลัพธ์ใกล้เคียงกับเหตุการณ์จริงมากที่สุด แล้วจะมารายงานว่า ทุกอย่างเป็นอย่างไรครับ :)

javaboom Sun, 19/10/2008 - 13:33

ขอให้คุณความดีของการอุทิศในการพัฒนาครั้งนี้ นำผลดีตอบแทนแก่ทีมพัฒนาและผู้ที่เกี่ยวข้องด้วยนะครับ

JavaBoom (Boom is not Java, but Java was boom)
http://javaboom.wordpress.com

materaj Mon, 20/10/2008 - 11:54

ดีใจครับที่พัฒนาได้อย่างต่อเนื่อง จะรอดูความคืบหน้าครับ พี่ยอด

chaba_bkk Wed, 22/10/2008 - 11:39

รีบติดต่อขอใช้ศูนย์ไทยกริด ดีกว่าครับ

ได้ข่าวว่าจะหมดสัญญาเช่าพื้นที่ กับ ม.เกษตร แล้วเดี๋ยวจะติดต่อ หรือขอใช้งานไ้ด้ยากครับ

เป็นกำลังใจให้ทีมงานพัฒนา และผู้เกี่ยวข้องทุกคนนะครับ

ไทยทำไทยใช้ไทยเจริญ
It's my life. Open your mind for the future.