Cluster Computing

How to generate combinations in Python

I was asked to help implement a kind of reusable combination generator in Python given the maximum number and the group size. Combination is widely used in high performance computing especially for searching in state space. Note that it means solving problem by brute force technique. So I wrote several codes.

Building academic conference site using Drupal

I have just assigned to find a solution for building an academic conference site as quick as possible. I used to be authors and also reviewer assistant but I have never been an organizer. This is my first time in this area. Anyway, it seems there are many softwares available right now. Below are just a list I found in Google.

  1. BYU Paper Review System - This one is very old and maybe obsolete for so long. The most interesting thing I found is that it was written in C as external PHP module.
  2. MyReview - It has just released the latest feature-rich version last month.

I don't have much time to find more but it seems MyReview is one of the most popular player. Anyway, my favorite CMS is Drupal and most of our sites are Drupalized. It would be nice if we can build an academic conference site using Drupal. And I found Conference module for Drupal.

How to convert video to FLV using Mencoder

One of the most popular video format in recent years is Flash Video or so called FLV because it supports streaming over the web architecture using normal http protocol. In another point of view, 3GP is widely used in mobile phone because it is very small and efficient for small screen like mobile phone. The technology is going to emerge someday. 3GP would be available on the web for massive distribution. The best approach for publishing video on the web is to use FLV. I will give an example of unattended command for converting any video files including 3GP to FLV using Mencoder.

How to tune network parameters for high performance network

Linux is one of the best operating system. Its default settings are almost perfect especially network parameters. I said almost because they are not completely perfect for all situations. Actually, it works perfectly on many situations, e.g., desktop, workstation, and server. For such a normal server, Linux is sufficient for all of us. However, in high performance computing area, the default settings might be not enough at all. So we have to tune network parameters to obtain the top performance.

Computer System in 2,800 million baht

ตั้งชื่อซะหรู กะจะแปลเป็นไทยว่า "ระบบคอมพิวเตอร์งบ 2,800 ล้านบาท" พอดีได้อ่านข่าวเล็กๆ น้อยๆ เรื่อง Linux บน Mainframe เห็นแล้วต้องกลับมาคิดหลายวัน เหมือนมีอะไรค้างคาใจในหัว สุดท้ายก็คิดออกเมื่อกี๊เอง เรื่องของเรื่องก็คือระบบคอมพิวเตอร์ที่ว่ามันคืออะไร และด้วยราคานี้จะมีทางเลือกอะไรได้บ้าง เท่าที่อ่านดูงานนี้งบนี้ต้องใช้คำว่าระบบ เพราะรวมฮาร์ดแวร์ ซอฟต์แวร์ และเน็ตเวิร์คเข้าด้วยกันแบบ turn-key ซึ่งบริษัทที่จะรับทำงานแบบนี้ได้ต้องมีเงินถุงเงินถังแน่นอน กว่าจะได้เงินก็คงเป็นปี เรื่องจ่ายเงินเอาไว้ก่อน ตอนนี้ผมสนใจอยู่สองประเด็น

  1. ฮาร์ดแวร์ที่ดูเหมือนจะเป็น
  2. ฮาร์ดแวร์ที่เป็นไปได้

How to prevent duplicate entry error in MySQL

Sometimes, errors should be ignored because they are not necessary at all. In MySQL especially for replication, the general architecture is to have a host for write and other hosts for read. As a result, response time of the whole system should be more scalable. If something goes wrong at the master node where all write operations must be performed, the error may propagate to other replications. One of common error oftenly occurs during replication is duplicate entry. It is possible to prevent this error which may lead the replication to stop.