Showing posts with label Activity report. Show all posts
Showing posts with label Activity report. Show all posts

Wednesday, July 31, 2013

Leaving Japan

Before I knew it, two months have already passed and I'm on the last day of my trip to Japan. While I will definitely miss many things in Japan, I also miss many things from Thailand and am looking forward to go back. Actually, the clerk at Sakura-kan told me that I look more happy than usual, similar to other guests who are leaving.

To get back, I took a bus to the airport and that it where my unlucky streak continued. Having 200 MB left, I tethered my phone to my computer to use the Internet on the bus and make plans back in Thailand. And then, 200 MB disappeared in the blink of an eye! At first, I thought that it was because I was browsing the web on my computer too much, but in fact, it was due to another reason.


For some reason, Google services decided to use 183 MB. At first, I thought it was just my luck, but when one of my friends also complained with a similar amount, I knew it was no coincidence and the size looked similar to an OTA. Pulling out my laptop and reading the logcat, I discovered that it was the 4.3 OTA that everybody has been waiting for, but it came at the wrong time for me! Luckily, the airport has free Wi-Fi, so I'm not stuck waiting without the internet.

But upon arriving at the airport, I've discovered something else. The Thai Airways checkin counter opens at 3 pm, leaving me with 2 hours having to drag my bag around everywhere. There is a coin locker, but I don't feel like spending 500 yen just to store my bag for a few hours.

Empty Thai check-in counter
Luckily, the airport has a "mall" where I could eat lunch and shop around. The lady at the food court was very nice. She helped me find a seat and recommended about the food ordering procedure.

The Airport Mall
My lunch — Doria Mushroom & Meat

After shopping around for a while, it's finally time for check-in. The queue was very very very long, but I could bypass the queue because I've used internet check-in. However, I don't really understand the point of internet check-in at all. What does the airline get by getting me to login and click a button on their website?

Tbe queue overflowed the area for the check-in counters!
My flight will leave soon, so I will end this post here. Thank you for following my blog!

Thursday, July 25, 2013

A Visit to TUAT

Today, my senior and I asked for a day off (our projects are mostly finished anyway) to go and visit 3 of our friends from our university who are summer exchange students at the Tokyo University of Agriculture and Technology, or TUAT for short (Japanese call it "noukoudai"). While the name of the university suggests that it is in Tokyo, its Koganei campus not in the central part of Tokyo and takes around one hour to get there from Akihabara on the Sobu and Chuo line (which means 2 hours from Tsukuba).

Train Route on Google Maps
After we've arrived, our friends picked us up and the station and it was a short walk to the campus.

Me and Tanasak together with our friends at TUAT
A hand statue in front of a building
Then, we were taken to visit the lab that one of our friends, Chanon, works in. Unfortunately, we couldn't visit the other labs because they are people working there and we would disturb them. However, we've learned about the project they've worked on for the summer — a sudoku solver, a system to distinguish writing from drawing and MIPS hardware programming.

Chanon's Lab
We also had lunch at the cafeteria, which was quite cheaper than the lunch at AIST. Most menus were only around ¥300.



After that, we parted way with our friends since they have to go and present their projects. We were recommend to go and take a look at the Edo-Tokyo Open-air Architectural Museum at Koganei park, which is a display of old Japanese house and we were also allowed to go inside some of them.

The bus we took to the Koganei Park

The entrance of the museum

An old house (but not so old)

There seems to be a lot of people drawing pictures

This Sony television should be about 60 years old

Blowing fire to heat water and cook rice

An old train from Shibuya to Shimbashi. It's not air-conditioned, but it's electrified.

Monday, July 22, 2013

Project Presentation

Today, a general ITRI meeting was held where interns and foreign researchers were given 15 minutes each to give a presentation about their project here at AIST, what they do at their home country and their hobbies. There were many interesting projects such as music classification, data parallelism, machine learning, data processing, cancer tissue classification and noise classification. One thing I've noticed is that PCA (which I've never heard of before) seems to be a common technique used in many of those projects. Of course, I have also presented my project.

The meeting room

A researcher from the states presenting his project

My senior, Tanasak, presenting his project

Me presenting my project

Chung, a Taiwanese presenting this project.
He's also the one to thank for these photos.

Wednesday, July 10, 2013

A post about work

It's been a while since I've last posted about work, so it's about time I post an update on what I spend most of my days playing with.

Last time, I've mentioned that I was working on porting postcopy migration to libvirt and CloudStack. After hunting down several bugs, I've successfully done that, more or less. But because the code for it is still in development, my port was more for testing and proof-of-concept than for actual use. Also, I don't think the user should have to be concerned about the method of migration in use.

"What is this box? Should I tick or not tick?" - User 
Right now, I'm playing with RDMA Migration, which utilizes the RDMA protocol rather than the TCP. RDMA stands for Remote Direct Memory Access and allows one computer to access another's memory directly without going through the CPU. RDMA works over Infiniband or RoCE (RDMA over Converged Ethernet), which is more or less a special flavor of Ethernet with additional features. The driver for the Mellanox ConnectX-2 that I've used supports RoCE and basically allowed the Ethernet device to appear as an Infiniband device. The lesson to take home is: in this world, there are protocols other than TCP/IP and Ethernet.

Of course, when testing migration methods, one thing that cannot be left out is benchmarking. Having spent quite a bit of time benchmarking, here's a lesson I've learnt: always automate. Automation will make your live much easier and your benchmarks much more reproducible. Plus, you can rest a bit while your automated benchmark is running.

This is it for now. The next work-related post will be about my summer internship presentation to other people in the department.

Tuesday, July 2, 2013

One month has passed

So one month has passed since I've came to Japan and that leaves me one more month for my internship here in Japan. For those who are wondering, I'll be leaving Japan on July 31.

Looking back, a lot of things has happened. I've learned about a lot of things, whether it is about Japanese culture or computers. I haven't had a lot of chance to meet a lot of Japanese, but the ones I've met, whether it is at the office, at a shop, at a meetup, on Ingress or just on the street, were really kind (despite me sometimes struggling to communicate). The researchers from Taiwan who came here were also great friends. I have also eaten great food and explored interesting places. There's no other way to put it except "It has really been an enjoyable and interesting month!"

For the internship, currently, I am working on porting postcopy migration to libvirt and CloudStack. Due to the relatively immature code, it might be harder and more obscure errors may occur, but it is a very good chance to learn more about the Linux kernel (and put those knowledge from Computer Architecture class into use). After that, the schedule is to wrap everything up and give a presentation to everyone else in the office before preparing a final report. I might even have some free time for additional travel towards the end!

And that's enough for my reminiscence. Looking forward to another great month!

Wednesday, June 26, 2013

Submitting Patches to CloudStack

(Warning: Another technical post. Blame the rain.)

Today, the patch I've been working on is finally out there in the public. The patch is to add PCI-Passthrough support to CloudStack so that various PCI devices can be directly assigned to guests. Network cards can be assigned to guests for performance reason or other devices which has no emulation support, such as SSL accelerator cards, can be added so that guests can use them. Thanks to my mentor and the CloudStack community, the patch has gone through several iterations, improving each time.

After cleaning up the patch and rebasing it onto the latest 'master' development branch. The patch has been submitted to Apache's Review Board. After the patch is submitted on the website, it is emailed out to the mailing list for other developers to review. Even though I have code review experience with Gerrit from CyanogenMod before, it'd be interesting to see how things would turn out for a larger project maintained by a well-known community such as Apache. From Apache's and Linux's mailing lists, I can already see that the internal operations are quite different.

For those interested, you can see the patch submitted for review here: https://reviews.apache.org/r/12098/

Tuesday, June 25, 2013

The FDB Table

(Warning: highly technical post!)

Working on my project at AIST, I've encountered many problems related to networking and the kernel. One of them is that, when SR-IOV is enabled, bridged networking no longer works. Per my mentor's suggestion, I've posted a bug report onto the Linux kernel's netdev mailing list and I've got many useful replies.

One of them suggested that I add the guest's MAC address to the device's FDB table.
As Greg indicdated, this (== stetting a bridge over a PF or VF in
SRIOV moded) can actually work, if you make sure to use FDB operations
to add the VM unicast MAC to the uplink (the mellanox device) tables,
this is trivial (google for ndo_fdb_add ...) and should work, let us
know if it doesn't.
I had no idea what the FDB table was, but a bit of Googling showed me that the "bridge" utility from the "iproute2" set supports modification of the FDB table. So I've tried sudo bridge fdb add [target mac address] dev [device] on the host and sure enough, it worked!

But what exactly is the FDB table and what is it used for? The only meaningful resource I could find was on the blog "Michael McNamara". According to that post, the FDB table is the Layer 2 version of the ARP table, allowing a switch to know which port to forward a packet to. My guess would be that the FDB tables allows the SR-IOV device to know which PF or VF to forward the packet to.

Tuesday, June 18, 2013

AIST's Next Generation Data Center

Today, Sugita-san took me and others to look at AIST's "Next Generation Data Center", which is a container-based data center optimized for power efficiency. The container in the middle of the picture below is the next generation container-based data center while the building to the left is a traditional data center, but with improved cooling efficiency.


Let's take a look inside the traditional data center first.

The black rack is the cooling unit, located inside the data center for maximum efficiency.
A closer look at the server rack
and the cooling rack
and finally the UPS rack, composed of standard batteries good for 10 minutes.
Now, let us enter the next generation data center. For some reason, it's 40°C inside! I was told that it has never been this hot before, so maybe there's some problem. (EDIT: I was informed that the servers have high thermal tolerance. The high room temperature does not matter, but it is the airflow, which keeps the server cool, that is important.)



All computers here uses water cooling

The water cooling united connected inside the blade server

High voltage DC power is used for efficient power supply
This is the air exchange unit connected to the next generation data center
Anyone can probably tell that this is the air conditioning pipe!
If you're interested in more detail about AIST's next generation data center, please see the YouTube video (prepared by AIST) below.


Friday, June 14, 2013

Welcome Party

Today, after work, the people in the office held a party for us interns and also two other engineers who came from Taiwan. We went to an Izakaya near the Tsukuba station. An Izakaya is a traditional Japanese-style bar which also serves food and it is a popular place for drinking after work.

In Tsukuba, many shops have transport service for large groups of people since the public transport is not very convenient and people cannot drive after they drink.

The bus came and pick us up at AIST
And we finally arrive at the shop.


Inside the shop, we have to take off our shoes. The seats are Japanese-style.


Most people drank beer and sake, but I opted for Calpis. (I really missed it after they stopped selling it in Thailand.)


Also, here, when you want to call a waiter, you can just press this button. It'll send a wireless signal (really!) and a waiter will come.


And these are the foods.

Appetizer: salad
A big boat of sashimi
Fried Natto
Tempura
Chicken dipped in raw egg 
The waiter told us not to open it... I wonder what's inside
Grilled(?) Hokke
The mystery's revealed! It's steamed pork.
Aside from the delicious food, I really got to know other people in the office better. Some told us funny stories about their travel or their work. Overall, it was a very enjoyable event. Thank you to everyone at AIST, ITRI!

The aftermath