Even faster strncpy, fixed

Even faster strncpy has a caveat of nonpadding by 0’s if the length of source string is less than the length specified by a function parameter. The version below has this issue fixed, but it’s still faster than standard version of strncpy, if the code is compiled with optimization on a modern processor.
Read the rest of this entry »

Popularity: 23% [?]

www/dpsearch: 4.53

FreeBSD’s port www/dpsearch has been updated to the latest version of DataparkSearch Engine released, 4.53.

Popularity: 23% [?]

DataparkSearch 4.53

A new version, 4.53, of DataparkSearch Engine has been released. Changes since version 4.52 are:
Read the rest of this entry »

Popularity: 24% [?]

nobrandsearch of Hakia is flawed

NoBrandSearch is a new project of Hakia. It’s intended to be an one more blind comparison of search engines. Unfortunately, it has a flaw in non-Latin characters display for Google results (and, in particular, that fact has led me to vote for Bing’s results which displays Cyrillic correctly):
Read the rest of this entry »

Popularity: 26% [?]

Begun: ads templates

Begun, the second large Russian context ads network introduces templates for context ads, as it’s been stated at corporate site.

A template of context ads is a basic form of ads in which Begun inserts search keywords automatically according to user queries. E.g., the ad template heading “#foreign# cars sale” will appear as “Audi cars sale” for the user query “Audi cars”, which would attract attention of potential customers who are interested in cars of this particular car maker.

Thus an advertiser can use single template for a bunch of keywords or promoted products, which will show ads relevant to a particular search query.

Templates can be used as in ad heading as in ad description but only once in each section.

Popularity: 25% [?]

For screwed Yandex

15455788.1732105.1261865371.d7b254696f78ac63f2067e2815cf80c3

Popularity: 30% [?]

Even faster memcpy

Below is a faster implementation of the memcpy function (previous version is here). The comparison of the old, the new, the FreeBSD’s version in C language and the standard implementation on the test:

test0: FreeBSD memcpy in C 2.7686
test1: <new dps_memcpy>    0.43485
test2: <old dps_memcpy>    2.50218
test3: <standard memcpy>   0.456584
ratio(1/2): 0.17
ratio(1/0): 0.16
ratio(2/0): 0.90
ratio(1/3): 0.95

Read the rest of this entry »

Popularity: 32% [?]

Even faster strncpy

Below is a faster implementation of the strncpy function (previous version is here). The comparison of the old, the new and the standard implementation on the test:

test1: <new dps_strncpy>  3.00593
test2: <old dps_strncpy>  3.39416
test3: <standard strncpy> 5.06081
ratio(1/2): 0.89
ratio(1/3): 0.59
ratio(2/3): 0.67

Read the rest of this entry »

Popularity: 30% [?]

Duff’s device bubblesort

As continue of bubbles, caches and predictors of transitions, a new version of Bubble sort à la Duff’s device:


    for (i = 1; i < N; i++) {
      n = (i + 7) / 8;
      s = i % 8;
      src = a + (n - 1) * 8;
      switch(s) {
      case 0:    do {    if (src[8] < src[7]) swap(src[8], src[7]);
      case 7:        if (src[7] < src[6]) swap(src[7], src[6]);
      case 6:        if (src[6] < src[5]) swap(src[6], src[5]);
      case 5:        if (src[5] < src[4]) swap(src[5], src[4]);
      case 4:        if (src[4] < src[3]) swap(src[4], src[3]);
      case 3:        if (src[3] < src[2]) swap(src[3], src[2]);
      case 2:        if (src[2] < src[1]) swap(src[2], src[1]);
      case 1:        if (src[1] < src[0]) swap(src[1], src[0]);
	src -= 8;
	} while(--n > 0);
      }
    }

Updated code: bubble-duff.zip

Popularity: 35% [?]

Rutvit, Russian Twitter

Dmitry Koterov, co-founder of professional social network “Moi Krug” (similar to LinkedIn), has announced the launch of a new project called RuTvit.

According to Dmitry, RuTvit combines the best of FriendFeed and twitter, also the improvements focused on Russians has being brought to the project.

As examples of inconveniences of existing services, Dmitry points out the absence of search with word forms in twitter, lack of real time post updates (as it implemented in FriendFeed but not in twitter), lack of Russian hash tags, unrepresentative picture of popular Russian users in twitter.

Despite the fact that RuTvit has lunched in alpha version, it implements a real time search, also gives the possibility to import from twitter, FriendFeed and others (total 19 popular online services and social networks), which would facilitate migration to RuTvit.

Popularity: 40% [?]