ashtuchkin/iconv-lite — pull request #17 by fengmk2 (2012-08-25 17:57:59+00:00)
Title: Optimized table and internal encoding use "single-byte" way.

Optimized before:

```bash
$ node test/perfomance.js gbk

gbk charset performance test:

Encoding 114688 chars 1000 times:
iconv: 7278ms, 15.39 Mb/s.
iconv-lite: 7136ms, 15.70 Mb/s.

Decoding 212992 bytes 1000 times:
iconv: 8569ms, 24.27 Mb/s.
iconv-lite: 8061ms, 25.80 Mb/s.
```

after:

```bash
$ node test/perfomance.js gbk

gbk charset performance test:

Encoding 114688 chars 1000 times:
iconv: 7231ms, 15.49 Mb/s.
iconv-lite: 7067ms, 15.85 Mb/s.

Decoding 212992 bytes 1000 times:
iconv: 8017ms, 25.94 Mb/s.
iconv-lite: 2109ms, 98.62 Mb/s.
```

And I also let `test/performance.js` support charset params, just run `$ node test/performance.js [encoding]`, default encoding is "windows-1251".
e.g.:

```bash
$ node test/performance.js
$ node test/performance.js utf8
$ node test/performance.js gbk
```