Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package com.facebook.presto;
 
 
 import java.util.List;
 
 import static com.facebook.presto.spi.type.BigintType.BIGINT;
 
 @Fork(3)
 @Warmup(iterations = 10, time = 500, timeUnit = .)
 @Measurement(iterations = 10, time = 500, timeUnit = .)
 {
     @Benchmark
     public List<PagerunBenchmark(BenchmarkData data)
     {
         PagePartitionFunction partitionFunction = new HashPagePartitionFunction(0, 8, data.getChannels(), data.getHashChannel(), data.getTypes());
         return partitionFunction.partition(data.getPages());
     }
 
     private static List<PagecreatePages(int pageCountint channelCount)
     {
         int positionCount = . / (channelCount * 8);
         List<Pagepages = new ArrayList<>(pageCount);
         for (int numPage = 0; numPage < pageCountnumPage++) {
             Block[] blocks = new Block[channelCount];
             for (int numChannel = 0; numChannel < channelCountnumChannel++) {
                 blocks[numChannel] = BlockAssertions.createLongSequenceBlock(0, positionCount);
             }
             pages.add(new Page(blocks));
         }
         return pages;
     }
 
     @State(.)
     public static class BenchmarkData
     {
         @Param({ "2""5""10""15""20" })
         private int channelCount;
 
         @Param({ "true""false" })
         private boolean hashEnabled;
 
         private final int maxPages = 20;
         private List<Pagepages;
         public Optional<IntegerhashChannel;
         public List<Typetypes;
         public List<Integerchannels;
 
         @Setup
         public void setup()
         {
              = createPages();
              =  ? Optional.of( - 1) : Optional.empty();
              = Collections.<Type>nCopies();
              = new ArrayList<>( - 1);
             for (int i = 0; i <  - 1; i++) {
                 .add(i);
             }
         }
 
         public List<PagegetPages()
        {
            return ;
        }
        public Optional<IntegergetHashChannel()
        {
            return ;
        }
        public List<TypegetTypes()
        {
            return ;
        }
        public List<IntegergetChannels()
        {
            return ;
        }
    }
    public static void main(String[] args)
            throws RunnerException
    {
        Options options = new OptionsBuilder()
                .verbosity(.)
                .include(".*" + BenchmarkHashPagePartitionFunction.class.getSimpleName() + ".*")
                .build();
        new Runner(options).run();
    }
New to GrepCode? Check out our FAQ X