สำหรับท่านที่หาคอมแรงๆทดลอง senior project หรือ thesis

โลโก้บริการกลุ่มเมฆของ Amazon ในนามว่า Amazon Web Services (AWS) - ภาพจากวิกิพีเดีย

สำหรับท่านที่ต้องการหาคอมพิวเตอร์สเปคแรงๆหรือคอมพิวเตอร์จำนวนมากๆ สำหรับทำงานวิจัยหรือโครงการพัฒนาซอฟต์แวร์ อาทิเช่น

  • นักศึกษาปริญญาตรีที่กำลังขึ้นปี 4 ที่ต้องปั่นโปรเจคจบ (เขายังเรียกกันว่า senior project ใช่ไหม?)
  • นักศึกษาปริญญาโท/เอก ที่กำลังปั่น thesis/independent study/research project ใดๆก็ตาม
  • นักเรียนนักศึกษาระดับปีไหนๆก็ตาม ที่ต้องการคอมพิวเตอร์สำหรับเขียนโปรแกรมที่เป็นโปรเจคเป็นชิ้นเป็นอัน เช่น opensource software หรือประกวดโครงงานซอฟต์แวร์ตามงานแข่งขันต่างๆ เป็นต้น

ถ้าท่านอยู่ในกลุ่มนี้ (หรือมีส่วนเกี่ยวข้อง) ผมขอแนะนำ AWS in Education ซึ่งผมเคยนำเสนอมานานแล้วในหัวข้อ มาของบใช้ EC2 เพื่อการศึกษาแล้ววิจัยกันเถอะ บริการที่มีประโยชน์ต่อท่าน อาทิเช่น บริการเซิร์ฟเวอร์เสมือน (Amazon EC2), บริการพื้นที่จัดเก็บข้อมูล (Amazon S3), บริการฐานข้อมูล (Amazon RDS Amazon ElastiCache และ Amazon DynamoDB), และบริการประมวลผล MapReduce (Amazon EMR) เป็นต้น

การของบมาจาก AWS in Education ท่านจะต้องเตรียมตัวกันหน่อย

  1. ไปศึกษาดูก่อนว่า บริการกลุ่มเมฆของ Amazon หรือ Amazon Web Services (AWS) มีอะไรบ้าง ทำอะไรได้บ้าง แล้วท่านจะเอามาใช้ทำอะไรได้บ้างสำหรับงานของท่าน
  2. กำหนดหัวข้อโครงงาน (เช่น หัวข้อโปรเจคจบ, หัวข้อโครงการ opensource, หัวข้อวิจัย, หัวข้อวิทยานิพนธ์หรือ thesis)
  3. เขียนรายละเอียดของโครงงาน เช่น แนะนำโครงงาน, แก้ไขปัญหาอะไร, จะใช้วิธีอะไรแก้ไข, จะเอา AWS ไปใช้ทำอะไรได้บ้าง, ผลลัพธ์ของโครงงานจะออกมาหน้าตาเช่นไร เป็นต้น
  4. เมื่อเตรียมตัวตามข้อ 1 – 3 ครบแล้ว (ย้ำว่าทุกอย่างต้องเขียนเป็นภาษาอังกฤษ) ให้เข้าไปที่เว็บ AWS in Education แล้วเข้าไปหน้าส่วน Students จากนั้นก็กรอกข้อมูลในฟอร์ม แล้วกด Submit ก็เป็นอันเสร็จสิ้น

Amazon จะใช้เวลาในการตรวจสอบข้อมูลที่เรากรอกประมาณ 1 เดือน หรืออาจจะมากกว่านั้น หากโครงการที่ท่านเขียนไปผ่าน Amazon จะตอบอีเมลหาท่าน ในเมลจะมี code แนบมาด้วย ท่านจะต้องเอา code นั้นไปลงทะเบียนที่หน้าเว็บ http://aws.amazon.com/awscredits/ เพื่อแลกเป็นเครดิตหรือ AWS Credit (จำนวนเงินในหน่วยดอลลาร์) โดยปกติ นักเรียน/นักศึกษาจะได้งบนี้ประมาณ 100 ดอลลาร์  แต่ก่อนที่ท่านจะแลกเครดิตนี้ได้ ท่านต้องมี account ของ AWS ด้วย ดังนั้น สมัคร account ไว้ล่วงหน้าเลย

ผมเคยโพสต์เรื่องวิธีสมัคร AWS ไว้แล้วที่หน้านี้ ถ้าหากท่านไม่มีบัตรเครดิต/เดบิตที่ซื้อสินค้าหรือบริการออนไลน์ก็อาจจะลำบากหน่อย เพราะจำเป็นต้องใช้ แต่ … ผมไม่แน่ใจว่า ถ้าท่านได้ AWS Credit โดยที่ท่านไม่มี account ของ AWS มาก่อน ท่านจะสามารถสมัคร AWS โดยไม่มีบัตรเครดิตได้หรือไม่ อันนี้ต้องลองดูเองนะครับ

ที่ผ่านๆมา ผมเคยขอเครดิตจาก AWS ไปทั้งหมด 3 ครั้งเพื่อใช้สำหรับงานวิจัยของผมเอง ผมก็ได้ AWS Credit มาทั้ง 3 ครั้งเลย ผมเห็นว่ามีประโยชน์สำหรับท่านอื่นๆเลยเอามาเล่าเผื่อแผ่กัน แม้ว่าจำนวนเงินในแต่ละครั้งเครดิตมีมูลค่าเพียง 100 ดอลลาร์ก็ตาม แต่จำนวนเงิน 100 ดอลลาร์นี้ก็เพียงพอสำหรับทดลองอะไรบางอย่าง ที่เราอาจจะหาคอมพิวเตอร์สเปคแรงๆด้วยจำนวนเยอะๆไม่ได้ในโรงเรียนหรือมหาวิทยาลัย

ผมคงแนะนำลำบากว่าจะเอา 100 ดอลลาร์ไปใช้ทำอะไรกับงานของท่านได้บ้าง แต่ผมยกตัวอย่างงานของให้ท่านลองเอาไปพิจารณาแล้วกันนะครับ

  1. ผมต้องใช้คอมพิวเตอร์สเปคแรงๆ แรมเยอะๆ สำหรับแก้ปัญหา optimization งานหนึ่ง งานดังกล่าวไม่สามารถรันบนคอมพิวเตอร์ที่มีแรม 16 GB ได้ (รันแล้วคอมไม่ตอบสนองเลย) และในที่สุดผมก็สามารถรันงานนี้ได้ที่ Amazon EC2 บนคอมพิวเตอร์ที่มีแรม 68 GB ด้วยงบต่ำกว่า 2 ดอลลาร์ (ไปอ่านบันทึกของผมได้ที่ เช่าคอมแรม 68 กิ๊กมาทำวิจัย)
  2. ผมต้องทดสอบ algorithm ที่ผมออกแบบบนคอมพิวเตอร์สเปคต่างๆเพื่อวัดประสิทธิภาพของ algorithm ของผมว่าทำงานได้ดีในคอมพิวเตอร์ที่แตกต่างกันให้ผลอย่างไรบ้าง ซึ่งใน Amazon EC2 มีคอมพิวเตอร์ที่สเปคหลากหลายตั้งแต่มี แรมขนาดเล็ก-ขนาดใหญ่, ซีพียูคอร์เดียว-หลายคอร์, คอมพิวเตอร์พร้อมหน่วยประมวลผลกราฟิกหรือ GPU ที่มีไม่ต่ำกว่า 200 คอร์ เป็นต้น
  3. ผมรันงานที่ประมวลผลในรูปแบบ MapReduce ซึ่งผมต้องการคอมพิวเตอร์ 64 เครื่องสำหรับประมวลผลแบบขนาน งานทดลองนี้ ผมต้องการแสดงให้เห็นว่า ผมได้ทำการทดลองบนกลุ่มคอมพิวเตอร์ขนาดใหญ่ โดยใน Amazon EC2 ผมสามารถรันงานของผมให้แล้วเสร็จภายในเวลา 20 นาที และผมใช้เครดิตไม่ถึง 8 เหรียญ ซึ่งถ้าผมรันบนคอม 1 เครื่องในที่ทำงานของผมอาจจะใช้เวลามากกว่า 8 ชั่วโมง ดังนั้น ใครที่ต้องการทดลอง scalability ของโปรแกรมประมวลผลแบบขนานแล้วละก็ Amazon EC2 เหมาะมาก (เช่น เพิ่มจำนวนคอมพิวเตอร์ 1 เครื่องไปจนหลายสิบถึงหลายร้อยเครื่อง)

งานของผมก็ประมาณนี้ ส่วนใหญ่จะเป็นข้อ 1 มากกว่า คือ ประมวลผลงานที่เป็น optimization งานประเภทนี้รันบนคอมพิวเตอร์สเปคต่ำๆแล้วมันทรมานจิตใจครับ

สำหรับท่านที่ไม่ทราบว่าจะเอา EC2 ไปใช้ทำอะไร ลองอ่านได้ที่ ใช้ EC2 ทำอะไรดี และมีอะไรใน EC2 อาจจะได้ไอเดียบ้างไม่มากก็น้อย (หรือไม่ได้เลย) และถ้าท่านมีข้อสงสัยว่าบริการ AWS แต่ละตัวใช้อย่างไร เขียนโปรแกรมอย่างไรดี จะเอาไปประยุกต์กับงานของท่านได้อย่างไร อันนี้เป็นหน้าที่ของท่านแล้วที่ต้องศึกษาเอง เอกสารใน Amazon มีมากมาย และการค้นหาข้อมูลจาก Google เองก็มีแหล่งข้อมูลให้อ่านเยอะแยะมากมายครับ … สู้ๆ

UPDATE ถือว่าเป็นเรื่องที่โชคดีสำหรับท่านที่จะใช้บริการ EC2 เพราะเมื่อวานนี้ Amazon เพิ่งประกาศลดราคาบริการ EC2 (อ่านข่าวได้ที่ Blognone) ซึ่งถ้าหากท่านได้ AWS Credit มาแม้เพียง 100 เหรียญ แต่ท่านสามารถใช้ EC2 ได้ยาวนานขึ้นเมื่อเทียบกับเมื่อเดือนก่อน

13 thoughts on “สำหรับท่านที่หาคอมแรงๆทดลอง senior project หรือ thesis

  1. juckky says:

    ขอบคุณมากครับให้ประโยชน์ มาก พอดีผมต้องการใช้บริการประเภทนี้พอดีครับ คือ ผมต้องการเปรียบเทียบ ตัวโปรแกรม Matlab กับโปรแกรม แนวเดียวกันที่เป็น Open source ด้วยโจทย์ ปัญหาเชิงคำนวน ทั้งบน desktop ทั่วไป และบน คอมมพิวเตอร์ที่มีประสิทธิภาพสูง ไม่ทราบพอจะมีวิธีการใช้ ไหมครับ ขอบคุณมากครับ

    • ลองเช่า EC2 ตามที่ผมแนะนำดูครับ แต่จะเปรียบเทียบอย่างไร คงต้องอ่านผลงานของคนที่เคยทำมาแล้วครับ ค้นคว้าจากกูเกิลดูครับ มีคนทำแบบเดียวกันนี้เยอะอยู่ครับ

      • juckky says:

        คือว่าหมายถึงวิธี การที่เราจะควบคุมเครื่องเซิฟเวอร์เสมือนของ Amazon ใช้ซอฟแวร์อะไรเค้ามีสำเร็จรูปมาให้เรารึเปล่าครับถ้าเป็นไปได้ ขอลิงค์สาธิตการใช้งานหน่อยครับ ขอบคุณครับ

      • ลองค้นในกูเกิลดูครับ มีข้อมูลเยอะมากๆครับ ลองค้นด้วยคีย์เวิร์ด “ec2 tutorial” ดูครับ ใน youtube ก็มีสอนครับ ลองใช้คีย์เวิร์ดอื่นๆด้วยได้ครับ เช่น “ec2 step by step” “ec2 guide” เป็นต้น

        ผมไม่ทราบว่า tutorial ไหนดี ต้องศึกษาดูเองครับ ผมเรียนเองจาก document ของ EC2 เลย ซึ่งเขียนละเอียดพอควรครับ ดูได้ที่ http://aws.amazon.com/documentation/ec2/

        ด้วยความยินดึครับ

      • juckky says:

        แล้วตัววินโดว์บน บริการ EC2 เป็นวินโดว์อะไรอะครับ เพราะว่ากลัวโปรแกรมที่ผมจะนำไปทำจะรันบนนั้นไม่ได้ ขอบคุณครับ

      • EC2 ก็คือ virtual machine หรือคอมพิวเตอร์ดีๆนี่เองครับ และเราเลือก spec ได้ว่าจะแบบไหน เราเป็น admin ดูแลเอง จะติดตั้งโปรแกรมอะไรก็ได้ที่ต้องการ ยกเว้นว่าโปรแกรมนั้นๆต้องการฮาร์ดแวร์พิเศษแปลกประหลาดจริงๆ หรือเราจะติดตั้งฮาร์ดแวร์เองคงทำไม่ได้ เพราะมันเป็น virtual ส่วน Windows ทาง EC2 ก็มี Windows 2008 ถ้าโปรแกรมสนับสนุน Windows 2008 ก็ติดตั้งได้ไม่มีปัญหาน่ะครับ

      • juckky says:

        T^T คือว่าปัญหาที่ผมอยากจะถามนั้นมีมากมายเหลือเกิน พอจะมีทางติดต่อที่สะดวกบ้างไหมครับ อย่างเช่น msn หรือ facebook ถ้าไม่สะดวกก็ไม่เป็นไรครับแต่ตอนนี้อยากทราบว่า จะใช้บัตรATM ที่มันมีคำว่า visa ติดได้ไหม หรือต้องใช้บัตรเครดิตอย่างเดียวถ้าเป็นบัตร เครดิตอย่างเดียว ผมจะได้รีบไปสมัครครับขอบคุณมากครับ

      • ต้องขอโทษด้วยครับที่ผมไม่สะดวกตอบละเอียด ยิ่งถ้าบอกว่ามีคำถามมากมายน่ะครับ เนื่องจากผมมีงานประจำที่ต้องสะสางน่ะครับ อยากช่วยนะครับแต่งานผมเองไม่มีใครช่วยน่ะครับ ที่ผ่านๆมา ใน blog ของผม ผมเลยจะบอกผู้อ่านเสมอว่า หากผู้อ่านสงสัยหรือต้องการคำตอบอะไร ต้องศึกษาค้นคว้าด้วยตนเองน่ะครับ ผมช่วยได้เพียงแนะนำว่าจะไปค้นคว้าข้อมูลได้เพิ่มเติมที่ไหนบ้างครับ

        คำถามของคุณ มีคำตอบละเอียดอยู่แล้วในเอกสารของ EC2 ที่ผมแนะนำให้ก่อนหน้านี้ EC2 ไม่ใช่เรื่องใหม่ มีคนทำเอกสารอ่านง่าย วิดีโอสอนใน Youtube ก็มีครับผม

        ผมช่วยตอบที่คุณถามไว้นะครับ คือ ATM มีตรา visa มันเป็นบัตรเดบิตครับ ในเอกสาร EC2 เมื่อ 2 ปีก่อนบอกว่า ไม่รับบัตรเดบิต ต้องเครดิตเท่านั้น แต่ล่าสุดผมไม่ทราบครับ ต้องลองค้นเอกสารดู​ ไม่ก็ต้องถามฝ่ายซัพพอร์ตของ Amazon ครับ ดังนั้น ทางที่ดี ผมแนะนำว่าใช้บัตรเครดิต ไม่มีปัญหาแน่ๆครับผม

        โชคดีครับ

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s