< prev index next >

test/jdk/jdk/incubator/vector/benchmark/src/main/java/benchmark/jdk/incubator/vector/Double64Vector.java

Print this page
rev 55892 : 8222933: [vector] Test failures after api change in JDK-8222752
Summary: Test failure becaues of renaming get() and getElement() functions to lane() in changeset http://hg.openjdk.java.net/panama/dev/rev/82514a6254e6
Reviewed-by: sviswanathan


 528                 DoubleVector av = DoubleVector.fromArray(SPECIES, a, i);
 529                 av.rearrange(VectorShuffle.fromArray(SPECIES, order, i)).intoArray(r, i);
 530             }
 531         }
 532 
 533         bh.consume(r);
 534     }
 535 
 536     @Benchmark
 537     public void extract(Blackhole bh) {
 538         double[] a = fa.apply(SPECIES.length());
 539         double[] r = fr.apply(SPECIES.length());
 540 
 541         for (int ic = 0; ic < INVOC_COUNT; ic++) {
 542             for (int i = 0; i < a.length; i += SPECIES.length()) {
 543                 DoubleVector av = DoubleVector.fromArray(SPECIES, a, i);
 544                 int num_lanes = SPECIES.length();
 545                 // Manually unroll because full unroll happens after intrinsification.
 546                 // Unroll is needed because get intrinsic requires for index to be a known constant.
 547                 if (num_lanes == 1) {
 548                     r[i]=av.get(0);
 549                 } else if (num_lanes == 2) {
 550                     r[i]=av.get(0);
 551                     r[i+1]=av.get(1);
 552                 } else if (num_lanes == 4) {
 553                     r[i]=av.get(0);
 554                     r[i+1]=av.get(1);
 555                     r[i+2]=av.get(2);
 556                     r[i+3]=av.get(3);
 557                 } else if (num_lanes == 8) {
 558                     r[i]=av.get(0);
 559                     r[i+1]=av.get(1);
 560                     r[i+2]=av.get(2);
 561                     r[i+3]=av.get(3);
 562                     r[i+4]=av.get(4);
 563                     r[i+5]=av.get(5);
 564                     r[i+6]=av.get(6);
 565                     r[i+7]=av.get(7);
 566                 } else if (num_lanes == 16) {
 567                     r[i]=av.get(0);
 568                     r[i+1]=av.get(1);
 569                     r[i+2]=av.get(2);
 570                     r[i+3]=av.get(3);
 571                     r[i+4]=av.get(4);
 572                     r[i+5]=av.get(5);
 573                     r[i+6]=av.get(6);
 574                     r[i+7]=av.get(7);
 575                     r[i+8]=av.get(8);
 576                     r[i+9]=av.get(9);
 577                     r[i+10]=av.get(10);
 578                     r[i+11]=av.get(11);
 579                     r[i+12]=av.get(12);
 580                     r[i+13]=av.get(13);
 581                     r[i+14]=av.get(14);
 582                     r[i+15]=av.get(15);
 583                 } else if (num_lanes == 32) {
 584                     r[i]=av.get(0);
 585                     r[i+1]=av.get(1);
 586                     r[i+2]=av.get(2);
 587                     r[i+3]=av.get(3);
 588                     r[i+4]=av.get(4);
 589                     r[i+5]=av.get(5);
 590                     r[i+6]=av.get(6);
 591                     r[i+7]=av.get(7);
 592                     r[i+8]=av.get(8);
 593                     r[i+9]=av.get(9);
 594                     r[i+10]=av.get(10);
 595                     r[i+11]=av.get(11);
 596                     r[i+12]=av.get(12);
 597                     r[i+13]=av.get(13);
 598                     r[i+14]=av.get(14);
 599                     r[i+15]=av.get(15);
 600                     r[i+16]=av.get(16);
 601                     r[i+17]=av.get(17);
 602                     r[i+18]=av.get(18);
 603                     r[i+19]=av.get(19);
 604                     r[i+20]=av.get(20);
 605                     r[i+21]=av.get(21);
 606                     r[i+22]=av.get(22);
 607                     r[i+23]=av.get(23);
 608                     r[i+24]=av.get(24);
 609                     r[i+25]=av.get(25);
 610                     r[i+26]=av.get(26);
 611                     r[i+27]=av.get(27);
 612                     r[i+28]=av.get(28);
 613                     r[i+29]=av.get(29);
 614                     r[i+30]=av.get(30);
 615                     r[i+31]=av.get(31);
 616                 } else if (num_lanes == 64) {
 617                     r[i]=av.get(0);
 618                     r[i+1]=av.get(1);
 619                     r[i+2]=av.get(2);
 620                     r[i+3]=av.get(3);
 621                     r[i+4]=av.get(4);
 622                     r[i+5]=av.get(5);
 623                     r[i+6]=av.get(6);
 624                     r[i+7]=av.get(7);
 625                     r[i+8]=av.get(8);
 626                     r[i+9]=av.get(9);
 627                     r[i+10]=av.get(10);
 628                     r[i+11]=av.get(11);
 629                     r[i+12]=av.get(12);
 630                     r[i+13]=av.get(13);
 631                     r[i+14]=av.get(14);
 632                     r[i+15]=av.get(15);
 633                     r[i+16]=av.get(16);
 634                     r[i+17]=av.get(17);
 635                     r[i+18]=av.get(18);
 636                     r[i+19]=av.get(19);
 637                     r[i+20]=av.get(20);
 638                     r[i+21]=av.get(21);
 639                     r[i+22]=av.get(22);
 640                     r[i+23]=av.get(23);
 641                     r[i+24]=av.get(24);
 642                     r[i+25]=av.get(25);
 643                     r[i+26]=av.get(26);
 644                     r[i+27]=av.get(27);
 645                     r[i+28]=av.get(28);
 646                     r[i+29]=av.get(29);
 647                     r[i+30]=av.get(30);
 648                     r[i+31]=av.get(31);
 649                     r[i+32]=av.get(32);
 650                     r[i+33]=av.get(33);
 651                     r[i+34]=av.get(34);
 652                     r[i+35]=av.get(35);
 653                     r[i+36]=av.get(36);
 654                     r[i+37]=av.get(37);
 655                     r[i+38]=av.get(38);
 656                     r[i+39]=av.get(39);
 657                     r[i+40]=av.get(40);
 658                     r[i+41]=av.get(41);
 659                     r[i+42]=av.get(42);
 660                     r[i+43]=av.get(43);
 661                     r[i+44]=av.get(44);
 662                     r[i+45]=av.get(45);
 663                     r[i+46]=av.get(46);
 664                     r[i+47]=av.get(47);
 665                     r[i+48]=av.get(48);
 666                     r[i+49]=av.get(49);
 667                     r[i+50]=av.get(50);
 668                     r[i+51]=av.get(51);
 669                     r[i+52]=av.get(52);
 670                     r[i+53]=av.get(53);
 671                     r[i+54]=av.get(54);
 672                     r[i+55]=av.get(55);
 673                     r[i+56]=av.get(56);
 674                     r[i+57]=av.get(57);
 675                     r[i+58]=av.get(58);
 676                     r[i+59]=av.get(59);
 677                     r[i+60]=av.get(60);
 678                     r[i+61]=av.get(61);
 679                     r[i+62]=av.get(62);
 680                     r[i+63]=av.get(63);
 681                 } else {
 682                     for (int j = 0; j < SPECIES.length(); j++) {
 683                         r[i+j]=av.get(j);
 684                     }
 685                 }
 686             }
 687         }
 688 
 689         bh.consume(r);
 690     }
 691 
 692 
 693     @Benchmark
 694     public void sin(Blackhole bh) {
 695         double[] a = fa.apply(SPECIES.length());
 696         double[] r = fr.apply(SPECIES.length());
 697 
 698         for (int ic = 0; ic < INVOC_COUNT; ic++) {
 699             for (int i = 0; i < a.length; i += SPECIES.length()) {
 700                 DoubleVector av = DoubleVector.fromArray(SPECIES, a, i);
 701                 av.sin().intoArray(r, i);
 702             }
 703         }




 528                 DoubleVector av = DoubleVector.fromArray(SPECIES, a, i);
 529                 av.rearrange(VectorShuffle.fromArray(SPECIES, order, i)).intoArray(r, i);
 530             }
 531         }
 532 
 533         bh.consume(r);
 534     }
 535 
 536     @Benchmark
 537     public void extract(Blackhole bh) {
 538         double[] a = fa.apply(SPECIES.length());
 539         double[] r = fr.apply(SPECIES.length());
 540 
 541         for (int ic = 0; ic < INVOC_COUNT; ic++) {
 542             for (int i = 0; i < a.length; i += SPECIES.length()) {
 543                 DoubleVector av = DoubleVector.fromArray(SPECIES, a, i);
 544                 int num_lanes = SPECIES.length();
 545                 // Manually unroll because full unroll happens after intrinsification.
 546                 // Unroll is needed because get intrinsic requires for index to be a known constant.
 547                 if (num_lanes == 1) {
 548                     r[i]=av.lane(0);
 549                 } else if (num_lanes == 2) {
 550                     r[i]=av.lane(0);
 551                     r[i+1]=av.lane(1);
 552                 } else if (num_lanes == 4) {
 553                     r[i]=av.lane(0);
 554                     r[i+1]=av.lane(1);
 555                     r[i+2]=av.lane(2);
 556                     r[i+3]=av.lane(3);
 557                 } else if (num_lanes == 8) {
 558                     r[i]=av.lane(0);
 559                     r[i+1]=av.lane(1);
 560                     r[i+2]=av.lane(2);
 561                     r[i+3]=av.lane(3);
 562                     r[i+4]=av.lane(4);
 563                     r[i+5]=av.lane(5);
 564                     r[i+6]=av.lane(6);
 565                     r[i+7]=av.lane(7);
 566                 } else if (num_lanes == 16) {
 567                     r[i]=av.lane(0);
 568                     r[i+1]=av.lane(1);
 569                     r[i+2]=av.lane(2);
 570                     r[i+3]=av.lane(3);
 571                     r[i+4]=av.lane(4);
 572                     r[i+5]=av.lane(5);
 573                     r[i+6]=av.lane(6);
 574                     r[i+7]=av.lane(7);
 575                     r[i+8]=av.lane(8);
 576                     r[i+9]=av.lane(9);
 577                     r[i+10]=av.lane(10);
 578                     r[i+11]=av.lane(11);
 579                     r[i+12]=av.lane(12);
 580                     r[i+13]=av.lane(13);
 581                     r[i+14]=av.lane(14);
 582                     r[i+15]=av.lane(15);
 583                 } else if (num_lanes == 32) {
 584                     r[i]=av.lane(0);
 585                     r[i+1]=av.lane(1);
 586                     r[i+2]=av.lane(2);
 587                     r[i+3]=av.lane(3);
 588                     r[i+4]=av.lane(4);
 589                     r[i+5]=av.lane(5);
 590                     r[i+6]=av.lane(6);
 591                     r[i+7]=av.lane(7);
 592                     r[i+8]=av.lane(8);
 593                     r[i+9]=av.lane(9);
 594                     r[i+10]=av.lane(10);
 595                     r[i+11]=av.lane(11);
 596                     r[i+12]=av.lane(12);
 597                     r[i+13]=av.lane(13);
 598                     r[i+14]=av.lane(14);
 599                     r[i+15]=av.lane(15);
 600                     r[i+16]=av.lane(16);
 601                     r[i+17]=av.lane(17);
 602                     r[i+18]=av.lane(18);
 603                     r[i+19]=av.lane(19);
 604                     r[i+20]=av.lane(20);
 605                     r[i+21]=av.lane(21);
 606                     r[i+22]=av.lane(22);
 607                     r[i+23]=av.lane(23);
 608                     r[i+24]=av.lane(24);
 609                     r[i+25]=av.lane(25);
 610                     r[i+26]=av.lane(26);
 611                     r[i+27]=av.lane(27);
 612                     r[i+28]=av.lane(28);
 613                     r[i+29]=av.lane(29);
 614                     r[i+30]=av.lane(30);
 615                     r[i+31]=av.lane(31);
 616                 } else if (num_lanes == 64) {
 617                     r[i]=av.lane(0);
 618                     r[i+1]=av.lane(1);
 619                     r[i+2]=av.lane(2);
 620                     r[i+3]=av.lane(3);
 621                     r[i+4]=av.lane(4);
 622                     r[i+5]=av.lane(5);
 623                     r[i+6]=av.lane(6);
 624                     r[i+7]=av.lane(7);
 625                     r[i+8]=av.lane(8);
 626                     r[i+9]=av.lane(9);
 627                     r[i+10]=av.lane(10);
 628                     r[i+11]=av.lane(11);
 629                     r[i+12]=av.lane(12);
 630                     r[i+13]=av.lane(13);
 631                     r[i+14]=av.lane(14);
 632                     r[i+15]=av.lane(15);
 633                     r[i+16]=av.lane(16);
 634                     r[i+17]=av.lane(17);
 635                     r[i+18]=av.lane(18);
 636                     r[i+19]=av.lane(19);
 637                     r[i+20]=av.lane(20);
 638                     r[i+21]=av.lane(21);
 639                     r[i+22]=av.lane(22);
 640                     r[i+23]=av.lane(23);
 641                     r[i+24]=av.lane(24);
 642                     r[i+25]=av.lane(25);
 643                     r[i+26]=av.lane(26);
 644                     r[i+27]=av.lane(27);
 645                     r[i+28]=av.lane(28);
 646                     r[i+29]=av.lane(29);
 647                     r[i+30]=av.lane(30);
 648                     r[i+31]=av.lane(31);
 649                     r[i+32]=av.lane(32);
 650                     r[i+33]=av.lane(33);
 651                     r[i+34]=av.lane(34);
 652                     r[i+35]=av.lane(35);
 653                     r[i+36]=av.lane(36);
 654                     r[i+37]=av.lane(37);
 655                     r[i+38]=av.lane(38);
 656                     r[i+39]=av.lane(39);
 657                     r[i+40]=av.lane(40);
 658                     r[i+41]=av.lane(41);
 659                     r[i+42]=av.lane(42);
 660                     r[i+43]=av.lane(43);
 661                     r[i+44]=av.lane(44);
 662                     r[i+45]=av.lane(45);
 663                     r[i+46]=av.lane(46);
 664                     r[i+47]=av.lane(47);
 665                     r[i+48]=av.lane(48);
 666                     r[i+49]=av.lane(49);
 667                     r[i+50]=av.lane(50);
 668                     r[i+51]=av.lane(51);
 669                     r[i+52]=av.lane(52);
 670                     r[i+53]=av.lane(53);
 671                     r[i+54]=av.lane(54);
 672                     r[i+55]=av.lane(55);
 673                     r[i+56]=av.lane(56);
 674                     r[i+57]=av.lane(57);
 675                     r[i+58]=av.lane(58);
 676                     r[i+59]=av.lane(59);
 677                     r[i+60]=av.lane(60);
 678                     r[i+61]=av.lane(61);
 679                     r[i+62]=av.lane(62);
 680                     r[i+63]=av.lane(63);
 681                 } else {
 682                     for (int j = 0; j < SPECIES.length(); j++) {
 683                         r[i+j]=av.lane(j);
 684                     }
 685                 }
 686             }
 687         }
 688 
 689         bh.consume(r);
 690     }
 691 
 692 
 693     @Benchmark
 694     public void sin(Blackhole bh) {
 695         double[] a = fa.apply(SPECIES.length());
 696         double[] r = fr.apply(SPECIES.length());
 697 
 698         for (int ic = 0; ic < INVOC_COUNT; ic++) {
 699             for (int i = 0; i < a.length; i += SPECIES.length()) {
 700                 DoubleVector av = DoubleVector.fromArray(SPECIES, a, i);
 701                 av.sin().intoArray(r, i);
 702             }
 703         }


< prev index next >