blob: 807cab5474ce149331a8c24846f43cf38a8d1f35 [file] [log] [blame]
********************************************************************************
Run performance tests with
java -cp lucene-core-3.1-dev.jar org.apache.lucene.util.packed.PackedIntsPerformance
********************************************************************************
********************************************************************************
testSpeed result by Toke Eskildsen (te@statsbiblioteket.dk) 2010-02-26
Java 1.6.0_15-b03 64bit Server, default settings, Linux
Dell Precision M6500: Intel i7 Q 820 @ 1.73GHz, 8 MB cache,
dual-channel PC 1333 RAM
********************************************************************************
bitsPerValue valueCount getCount Direct8 Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
1 1000 10000000 129 131 230 223 154 245 225 154
1 1000000 10000000 215 218 246 221 229 242 219 326
1 10000000 10000000 344 459 264 263 500 265 260 536
3 1000 10000000 161 157 251 228 154 247 225 156
3 1000000 10000000 210 217 257 244 225 255 239 321
3 10000000 10000000 353 457 274 283 747 277 275 531
4 1000 10000000 160 157 252 227 154 248 225 156
4 1000000 10000000 211 216 263 258 225 260 246 293
4 10000000 10000000 351 460 283 290 495 283 283 533
7 1000 10000000 161 157 254 228 154 250 225 157
7 1000000 10000000 212 216 265 262 224 267 257 292
7 10000000 10000000 352 459 359 403 496 360 371 534
8 1000 10000000 160 157 252 227 154 248 225 155
8 1000000 10000000 210 215 266 261 243 265 259 288
8 10000000 10000000 351 456 390 400 596 389 394 532
Mean: 238 275 273 267 316 273 261 330
bitsPerValue valueCount getCount Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
9 1000 10000000 157 252 228 154 251 224 155
9 1000000 10000000 216 266 264 224 268 259 295
9 10000000 10000000 459 413 454 495 413 423 535
15 1000 10000000 157 251 228 154 250 224 155
15 1000000 10000000 215 266 266 225 269 263 304
15 10000000 10000000 457 484 499 495 488 499 533
16 1000 10000000 158 252 227 155 249 295 157
16 1000000 10000000 217 268 269 221 268 263 294
16 10000000 10000000 456 490 499 494 686 497 533
Mean: 276 326 326 290 349 327 329
bitsPerValue valueCount getCount Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
17 1000 10000000 255 227 154 247 225 155
17 1000000 10000000 267 275 228 267 267 294
17 10000000 10000000 500 550 500 504 526 533
28 1000 10000000 253 227 154 250 226 155
28 1000000 10000000 273 279 224 272 280 292
28 10000000 10000000 536 552 501 541 550 535
31 1000 10000000 255 230 154 250 226 162
31 1000000 10000000 283 277 228 273 279 309
31 10000000 10000000 544 549 498 544 550 534
Mean: 351 351 293 349 347 329
bitsPerValue valueCount getCount Direct32 Packed64 Aligned64 Direct64
32 1000 10000000 155 249 226 156
32 1000000 10000000 226 278 277 292
32 10000000 10000000 499 548 553 533
Mean: 293 358 352 327
bitsPerValue valueCount getCount Packed64 Aligned64 Direct64
33 1000 10000000 250 226 156
33 1000000 10000000 273 340 286
33 10000000 10000000 551 584 533
47 1000 10000000 250 226 157
47 1000000 10000000 294 340 286
47 10000000 10000000 564 582 535
49 1000 10000000 250 228 156
49 1000000 10000000 292 349 292
49 10000000 10000000 568 585 533
63 1000 10000000 249 227 156
63 1000000 10000000 331 355 319
63 10000000 10000000 581 584 535
Mean: 371 385 328
Total execution time: 271 seconds
********************************************************************************
testSpeed result by Toke Eskildsen (te@statsbiblioteket.dk) 2010-02-26
Java 1.6.0_15-b03 64bit Server, default settings, Linux
Server ps3: Intel Xeon L5420 @ 2.50GHz, 6 MB cache
********************************************************************************
bitsPerValue valueCount getCount Direct8 Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
1 1000 10000000 288 309 398 425 365 421 421 392
1 1000000 10000000 364 371 419 440 389 417 440 636
1 10000000 10000000 749 1097 386 382 1259 385 378 1351
3 1000 10000000 305 300 357 340 298 369 338 298
3 1000000 10000000 308 325 376 372 331 375 367 578
3 10000000 10000000 757 1097 399 405 1261 396 398 1354
4 1000 10000000 305 300 357 340 298 369 338 298
4 1000000 10000000 309 325 376 373 329 385 367 579
4 10000000 10000000 758 1097 424 418 1259 413 422 1351
7 1000 10000000 305 300 370 340 298 369 337 298
7 1000000 10000000 309 325 379 376 329 379 371 583
7 10000000 10000000 758 1098 731 828 1259 747 738 1351
8 1000 10000000 305 300 357 340 298 369 337 298
8 1000000 10000000 308 325 378 376 326 384 373 579
8 10000000 10000000 758 1098 830 829 1260 847 828 1352
Mean: 459 577 435 438 637 441 430 753
bitsPerValue valueCount getCount Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
9 1000 10000000 300 357 340 298 368 337 298
9 1000000 10000000 325 381 383 329 379 375 581
9 10000000 10000000 1097 907 1001 1262 925 913 1354
15 1000 10000000 301 364 340 298 369 337 298
15 1000000 10000000 325 387 390 327 386 386 581
15 10000000 10000000 1097 1149 1174 1262 1172 1173 1354
16 1000 10000000 300 357 340 298 369 356 298
16 1000000 10000000 325 387 390 328 387 386 583
16 10000000 10000000 1096 1172 1173 1261 1193 1172 1354
Mean: 574 606 614 629 616 603 744
bitsPerValue valueCount getCount Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
17 1000 10000000 357 349 298 368 337 298
17 1000000 10000000 388 392 329 388 391 581
17 10000000 10000000 1192 1323 1261 1214 1261 1356
28 1000 10000000 364 349 298 379 337 298
28 1000000 10000000 395 377 328 395 398 578
28 10000000 10000000 1320 1323 1262 1344 1349 1354
31 1000 10000000 364 349 298 369 337 298
31 1000000 10000000 396 379 436 396 398 577
31 10000000 10000000 1339 1322 1262 1362 1348 1355
Mean: 679 684 641 690 684 743
bitsPerValue valueCount getCount Direct32 Packed64 Aligned64 Direct64
32 1000 10000000 298 369 337 298
32 1000000 10000000 327 401 401 579
32 10000000 10000000 1262 1367 1348 1354
Mean: 629 712 695 743
bitsPerValue valueCount getCount Packed64 Aligned64 Direct64
33 1000 10000000 369 342 298
33 1000000 10000000 403 637 579
33 10000000 10000000 1373 1416 1354
47 1000 10000000 369 342 298
47 1000000 10000000 472 636 576
47 10000000 10000000 1421 1415 1351
49 1000 10000000 369 342 298
49 1000000 10000000 490 635 578
49 10000000 10000000 1426 1414 1352
63 1000 10000000 369 342 298
63 1000000 10000000 662 642 580
63 10000000 10000000 1454 1415 1354
Mean: 764 798 743
Total execution time: 530 seconds
********************************************************************************
testSpeed result by Toke Eskildsen (te@statsbiblioteket.dk) 2010-02-26
Java 1.6.0_15-b03 64bit Server, default settings, Linux
Workstation pc286: Intel Core 2 E6550 @ 2.33GHz, 4 MB cache
********************************************************************************
bitsPerValue valueCount getCount Direct8 Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
1 1000 10000000 361 374 483 529 437 490 521 436
1 1000000 10000000 411 420 473 549 519 471 545 924
1 10000000 10000000 934 1136 403 453 1245 405 447 1337
3 1000 10000000 333 328 396 394 336 395 391 336
3 1000000 10000000 333 354 395 441 446 396 432 848
3 10000000 10000000 949 1156 487 570 1267 514 560 1336
4 1000 10000000 333 328 394 392 334 396 389 334
4 1000000 10000000 335 354 399 442 452 400 433 847
4 10000000 10000000 950 1156 664 704 1267 654 700 1334
7 1000 10000000 333 328 405 392 334 401 389 334
7 1000000 10000000 335 355 404 444 453 397 435 846
7 10000000 10000000 947 1156 963 1088 1268 976 1031 1335
8 1000 10000000 334 330 394 392 334 390 389 334
8 1000000 10000000 335 355 400 444 445 490 434 848
8 10000000 10000000 948 1155 1022 1089 1267 1035 1082 1335
Mean: 544 619 512 554 693 520 545 850
bitsPerValue valueCount getCount Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
9 1000 10000000 330 394 392 334 391 389 334
9 1000000 10000000 354 419 451 451 400 438 844
9 10000000 10000000 1155 1064 1192 1267 1079 1136 1335
15 1000 10000000 328 394 392 334 390 389 334
15 1000000 10000000 355 416 459 448 411 454 847
15 10000000 10000000 1156 1209 1299 1267 1221 1295 1335
16 1000 10000000 330 394 392 334 391 389 334
16 1000000 10000000 368 411 459 449 413 454 846
16 10000000 10000000 1156 1222 1356 1383 1235 1297 1336
Mean: 614 658 710 696 659 693 838
bitsPerValue valueCount getCount Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
17 1000 10000000 394 392 334 391 389 334
17 1000000 10000000 411 570 450 413 477 846
17 10000000 10000000 1233 1401 1267 1246 1351 1334
28 1000 10000000 394 392 334 390 389 334
28 1000000 10000000 477 587 448 468 563 847
28 10000000 10000000 1308 1400 1267 1319 1408 1335
31 1000 10000000 394 392 334 397 389 334
31 1000000 10000000 501 576 456 514 564 848
31 10000000 10000000 1320 1401 1268 1331 1407 1335
Mean: 714 790 684 718 770 838
bitsPerValue valueCount getCount Direct32 Packed64 Aligned64 Direct64
32 1000 10000000 334 391 389 334
32 1000000 10000000 456 572 565 849
32 10000000 10000000 1267 1334 1407 1335
Mean: 685 765 787 839
bitsPerValue valueCount getCount Packed64 Aligned64 Direct64
33 1000 10000000 391 389 334
33 1000000 10000000 533 976 845
33 10000000 10000000 1336 1467 1335
47 1000 10000000 391 389 334
47 1000000 10000000 759 975 846
47 10000000 10000000 1368 1473 1338
49 1000 10000000 390 389 334
49 1000000 10000000 781 974 848
49 10000000 10000000 1372 1475 1335
63 1000 10000000 391 389 334
63 1000000 10000000 925 975 846
63 10000000 10000000 1392 1475 1334
Mean: 835 945 838
Total execution time: 598 seconds
********************************************************************************
testSpeed result by Toke Eskildsen (te@statsbiblioteket.dk) 2010-02-26
Java 1.6.0_03-b05 64bit Server, default settings, Linux
Server metis: Intel Xeon 5148 @ 2.33GHz, 4 MB cache
********************************************************************************
bitsPerValue valueCount getCount Direct8 Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
1 1000 10000000 404 410 527 574 480 539 573 480
1 1000000 10000000 451 468 520 596 563 520 592 989
1 10000000 10000000 1073 1326 530 610 1435 528 611 1523
3 1000 10000000 474 474 541 576 473 540 570 469
3 1000000 10000000 445 460 519 598 584 520 600 984
3 10000000 10000000 1098 1323 602 721 1439 626 697 1518
4 1000 10000000 473 473 540 575 474 541 571 470
4 1000000 10000000 445 461 518 600 554 522 601 985
4 10000000 10000000 1100 1327 785 839 1443 765 853 1525
7 1000 10000000 474 474 542 577 475 543 572 471
7 1000000 10000000 446 463 519 602 556 522 601 985
7 10000000 10000000 1104 1329 1123 1261 1442 1144 1206 1523
8 1000 10000000 474 474 541 575 473 540 570 469
8 1000000 10000000 444 460 522 603 546 522 603 981
8 10000000 10000000 1099 1326 1184 1260 1436 1203 1258 1517
Mean: 666 749 634 704 824 638 698 992
bitsPerValue valueCount getCount Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
9 1000 10000000 474 540 575 473 540 566 470
9 1000000 10000000 461 522 610 562 524 603 980
9 10000000 10000000 1323 1234 1374 1438 1249 1312 1523
15 1000 10000000 474 541 576 474 542 567 476
15 1000000 10000000 460 540 619 584 532 621 984
15 10000000 10000000 1330 1396 1494 1441 1411 1490 1525
16 1000 10000000 475 541 576 474 541 566 470
16 1000000 10000000 467 545 619 541 536 615 982
16 10000000 10000000 1324 1405 1490 1438 1420 1483 1519
Mean: 754 807 881 825 810 869 992
bitsPerValue valueCount getCount Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
17 1000 10000000 541 576 474 542 565 469
17 1000000 10000000 542 710 592 537 623 984
17 10000000 10000000 1423 1612 1444 1440 1546 1524
28 1000 10000000 542 577 475 542 567 470
28 1000000 10000000 581 715 573 588 739 985
28 10000000 10000000 1507 1607 1440 1520 1607 1518
31 1000 10000000 541 576 474 543 566 471
31 1000000 10000000 608 708 585 624 722 983
31 10000000 10000000 1516 1610 1443 1532 1603 1525
Mean: 866 965 833 874 948 992
bitsPerValue valueCount getCount Direct32 Packed64 Aligned64 Direct64
32 1000 10000000 475 542 568 471
32 1000000 10000000 540 640 740 982
32 10000000 10000000 1443 1538 1604 1522
Mean: 819 906 970 991
bitsPerValue valueCount getCount Packed64 Aligned64 Direct64
33 1000 10000000 541 566 471
33 1000000 10000000 635 1145 980
33 10000000 10000000 1536 1670 1516
47 1000 10000000 540 565 471
47 1000000 10000000 883 1142 987
47 10000000 10000000 1566 1664 1522
49 1000 10000000 541 567 470
49 1000000 10000000 915 1140 1067
49 10000000 10000000 1571 1666 1520
63 1000 10000000 542 568 471
63 1000000 10000000 1084 1143 983
63 10000000 10000000 1597 1671 1525
Mean: 995 1125 998
Total execution time: 726 seconds
********************************************************************************
testSpeed result by Toke Eskildsen (te@statsbiblioteket.dk) 2010-02-26
Java 1.6.0_07-b06 64bit Server, default settings, Linux
Server debit: Intel Xeon MP CPU @ 3.16GHz, 1 MB cache
********************************************************************************
bitsPerValue valueCount getCount Direct8 Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
1 1000 10000000 428 426 496 752 475 546 748 475
1 1000000 10000000 932 1609 557 752 2090 579 747 2346
1 10000000 10000000 2384 2526 1205 1375 2545 1189 1286 2726
3 1000 10000000 469 469 529 736 480 535 726 486
3 1000000 10000000 842 1589 599 785 2017 624 774 2294
3 10000000 10000000 2417 2512 2222 2324 2548 2348 2307 2719
4 1000 10000000 469 469 528 734 484 534 725 487
4 1000000 10000000 853 1590 640 808 2022 647 795 2300
4 10000000 10000000 2410 2517 2365 2429 2551 2509 2441 2720
7 1000 10000000 469 469 528 734 483 534 724 488
7 1000000 10000000 865 1594 850 1171 2017 1024 1082 2294
7 10000000 10000000 2419 2513 2558 2666 2554 2723 2641 2713
8 1000 10000000 469 470 529 735 484 535 726 496
8 1000000 10000000 842 1572 1017 1095 2034 1032 1134 2302
8 10000000 10000000 2440 2512 2619 2661 2555 2755 2663 2734
Mean: 1247 1522 1149 1317 1689 1207 1301 1838
bitsPerValue valueCount getCount Direct16 Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
9 1000 10000000 470 528 735 485 537 727 491
9 1000000 10000000 1567 1052 1380 2024 1066 1204 2277
9 10000000 10000000 2509 2635 2715 2551 2798 2685 2734
15 1000 10000000 470 530 735 494 536 726 492
15 1000000 10000000 1570 1658 1840 2037 1745 1859 2290
15 10000000 10000000 2523 2715 2770 2545 2864 2769 2721
16 1000 10000000 470 529 735 483 534 726 495
16 1000000 10000000 1581 1730 1852 2044 1813 1857 2288
16 10000000 10000000 2515 2724 2771 2547 2886 2775 2723
Mean: 1519 1566 1725 1690 1642 1703 1834
bitsPerValue valueCount getCount Packed32 Aligned32 Direct32 Packed64 Aligned64 Direct64
17 1000 10000000 528 736 485 537 728 495
17 1000000 10000000 1770 2339 2017 1886 2107 2300
17 10000000 10000000 2731 2888 2549 2900 2799 2693
28 1000 10000000 528 734 481 535 726 487
28 1000000 10000000 2190 2353 2037 2310 2354 2297
28 10000000 10000000 2783 2848 2534 2956 2863 2723
31 1000 10000000 527 734 492 535 725 488
31 1000000 10000000 2230 2347 2020 2361 2340 2276
31 10000000 10000000 2813 2865 2547 2957 2858 2720
Mean: 1788 1982 1684 1886 1944 1831
bitsPerValue valueCount getCount Direct32 Packed64 Aligned64 Direct64
32 1000 10000000 482 536 727 487
32 1000000 10000000 2040 2406 2353 2297
32 10000000 10000000 2565 2972 2882 2722
Mean: 1695 1971 1987 1835
bitsPerValue valueCount getCount Packed64 Aligned64 Direct64
33 1000 10000000 535 726 494
33 1000000 10000000 2430 2608 2297
33 10000000 10000000 2990 3042 2714
47 1000 10000000 535 725 494
47 1000000 10000000 2573 2601 2284
47 10000000 10000000 3080 3032 2730
49 1000 10000000 536 726 493
49 1000000 10000000 2609 2620 2303
49 10000000 10000000 3067 3029 2706
63 1000 10000000 535 724 488
63 1000000 10000000 2687 2598 2294
63 10000000 10000000 3153 3048 2726
Mean: 2060 2123 1835
Total execution time: 1418 seconds