Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Optimization Odyssey, Part 1 & 2


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 107

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 109

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 111

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 112
April 3rd, 2010

At Alii, the base of our technology is a set of machine learning algorithms. And like most of them, the algorithms we use are hungry for computational power. The primary machines we use for ML have the following configurations: one Core i7 860 CPU, 4G/6G 1333MHz DDR3 RAM and HD5770 graphics card. They are common commodity computers, which you can buy them off the shelf in Best Buy. There is no fancy Xeon, Cell accelerator or multi-CPU motherboard. As a startup, we just want to extract the maximum computational power from every dollar we spent.

In the following series, I am going to introduce you how we optimized, accelerated and scaled out our core algorithm to several commodity computers. Here comes the first two parts.

Part 1. Dry Up the CPU

Core i7 860 is the second generation of i7 family. It is important to have the underline CPU architecture in mind in order to extract maximum computational power from it. The single core design of 860 is derived from Pentium 4, thus, it contains several good parts of P4 architecture: the instruction decoder cache, the multiplexing (hyper-threading) technology etc. In total, there are 4 cores on one 860 chip. Each core has independent 32K L1 cache and a 8M L3 cache shared among them.

Because of the hyper-threading technology, modern operating system will recognize the i7 860 CPU with 8 virtual cores. It is important to recognize that for shared memory system, there are two more dimensions for optimization consideration: memory bandwidth and memory banks. It is understandable that we cannot achieve 8x speed up because of these constraints even it is an embarrassing parallel problem.

A careful profile reveals that the time-consuming part in our algorithm is to compute scores of ~10k features on ~30k samples. It is a fairly easy task to parallel. In practice, we chose to decouple the computation by features. About 2.5x speed up achieved when we populated the computation to 8 threads (OpenMP).

Part 2. Hi, there, I am GPU

There is a decent GPU installed on our dev machine. With the newest 2.01 SDK, the HD5770 chip supports large part of OpenCL specifications. From read-write perspective, the computation is easy since we only have to write to one place and the others are read-only. This helps because the newest SDK started to use texture/vertex cache for read-only data. However, the feature calculation on the sample is in a very sparse and random access fashion, which means the data access cannot be coalesced easily. First, we tried to refer different samples by global id (slice the computation by samples). It is intuitive because the feature structure is more compact (about 120 bytes per feature where one sample will take ~25kb). If we could load each sample first, there is considerably less global memory access for the following computations. However, it doesn’t work out. The problem is, we need to sum up the scores for each feature. In this data process pattern, we need atomic primitives to maintain the correctness of overall algorithm. Which hammered badly on the performance.

In the end, we chose to slice the computation by feature. The trick is, we need to utilize the memory hierarchy. Each sample first load into work-group memory which is coalesced, then, the calculations are all carried out in local memory. The final result is not as impressive as we expected, but about 30% speed up is not that bad (comparing to OpenMP version).

Part 3, The Good Old MPI

To be continued.


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Finding hand in picture and why it is hard


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 107

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 109

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 111

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 112
December 8th, 2009

One basis of our technology is to find hand in picture precisely. One public test on this job is a division of PSCAL-VOC (Person Layout Taster: http://pascallin.ecs.soton.ac.uk/challenges/VOC/voc2009/layoutexamples/index.html).

It is hard. Unlike face, for which today’s technology can distinguish most faces in picture at reasonable speed, efficient finding hand in picture involves challenges of texture representation, structure prediction and low-level optimization. Hand has no deterministic texture feature. Some hand gestures, for example, full palm, grasping or fist has strong shape, but they all lack of texture information. For low-resolution picture, shape information can be compromised. Thus, we can hardly find any robust detector on market based solely on shape information. Even in controlled (some degree of) environment so that we managed to obtain accurate shape of each object in picture, another challenge comes. Human hand has large degree of freedom, and one change of gesture can have substantial effect on shape. Remember that in childhood you can mimic sea-bird with your hands? The large number of shapes that hand can have makes it infeasible to train a detector based on shape only.

In old days of face detection, researchers hope to utilize more external (referral) information to help determine if face or not. Is it a viable option for hand detection? Well, the moral of the story from past tells us that it makes thing more complicated. There are two ways to utilize external information, one is to use them as an oracle and trust it whatever happens. In this way, when collapse happened in oracle, your algorithm is doomed. Another one is to use them in probabilistic manner, increase the variables in the existing model and expect to get recover even the oracle is wrong. Since the main stream person detection methods are based on part probabilistically, we are in a situation of circular reasoning. It is an open option in conclusion of your paper, but it is not a practical way to solve this problem now.

In Alii, we do things in some ways different. Starting with simple gestures, we expect to cover large part of common gestures in daily life. By using a shape-related feature to characterize hand, we managed to obtain robust detection result in low res pictures.


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

PPR Update 2.0


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 107

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 109

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 111

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 112
December 3rd, 2009

Friends,

Our launch date for PPR Alpha is close. We have got a list of you who are kind enough to volunteer to help us test the game. Please feel free to send any bug report, suggestions, and comments to al@alii.tv

Our team will be contacting soon with the access to the alpha test. If you want to be our alpha users, please contact us at contact@alii.tv

Also, we will be having special bonus items open for initial alpha and beta users.

Below are a few snapshots.

2

1

3


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Alii PPR Development Update 1.0


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 107

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 109

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 111

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 112
October 8th, 2009

We now have a few ideas about the design elements of our new social game Punch Punch Revolution. We introduced a few innovative gameplay systems (ie. boost your punch power according the the position gap between you and your opponent). Please find the youtube video link as below:We’d love to hear your suggestions.

Here

If you are a developer and would like to help us make the game or want to make your own motion controlled web application with our API, please contact me at al@alii.tv to learn more about our technology and the benefits of being our partner.

Thanks – Team


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 43

Alii Official Blog


Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 35

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 107

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 109

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 111

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'UTC' for 'UTC/0.0/no DST' instead in /home/minbari/alii/blog/wp-includes/functions.php on line 112
August 5th, 2009

Hello World!

This is Alii’s official blog. We will be announcing our newest progress on Project Alii.  To access our live demo, please contact al@alii.tv.

Follow us on Twitter: webwii

Have a good day!

Team


WordPress Loves AJAX