Package org.apache.flink.core.memory

Examples of org.apache.flink.core.memory.MemorySegment


  private static Buffer allocBuffer() {
    return allocBuffer(MAX_BUFFER_SIZE);
  }

  private static Buffer allocBuffer(int bufferSize) {
    return spy(new Buffer(new MemorySegment(new byte[bufferSize]), bufferSize, RECYCLER));
  }
View Full Code Here


 
  private static List<MemorySegment> getMemory(int numPages, int pageSize) {
    List<MemorySegment> memory = new ArrayList<MemorySegment>();
   
    for (int i = 0; i < numPages; i++) {
      memory.add(new MemorySegment(new byte[pageSize]));
    }
   
    return memory;
  }
View Full Code Here

 
  private static List<MemorySegment> getMemory(int numPages, int pageSize) {
    List<MemorySegment> memory = new ArrayList<MemorySegment>();
   
    for (int i = 0; i < numPages; i++) {
      memory.add(new MemorySegment(new byte[pageSize]));
    }
   
    return memory;
  }
View Full Code Here

    this.outputs = new LinkedList<OutputGate>();

    this.memManager = new DefaultMemoryManager(memorySize, 1);
    this.ioManager = new IOManager(System.getProperty("java.io.tmpdir"));
    this.inputSplitProvider = inputSplitProvider;
    this.mockBuffer = new Buffer(new MemorySegment(new byte[bufferSize]), bufferSize, null);
  }
View Full Code Here

  @Override
  public Buffer requestBuffer(int sizeOfBuffer) throws IOException {
    if (rnd.nextFloat() < this.probabilityForNoneAvailable) {
      return null;
    } else {
      MemorySegment segment = new MemorySegment(new byte[this.sizeOfMemorySegments]);
      return new Buffer(segment, sizeOfBuffer, this.recycler);
    }
  }
View Full Code Here

    }
  }

  @Override
  public Buffer requestBufferBlocking(int sizeOfBuffer) throws IOException, InterruptedException {
    MemorySegment segment = new MemorySegment(new byte[this.sizeOfMemorySegments]);
    return new Buffer(segment, sizeOfBuffer, this.recycler);
  }
View Full Code Here

   
    try {
      final Channel.ID channelID = this.ioManager.createChannel();
      final BlockChannelWriter writer = this.ioManager.createBlockChannelWriter(channelID);
     
      MemorySegment memSeg = this.memoryManager.allocatePages(new DummyInvokable(), 1).get(0);
     
      for (int i = 0; i < NUM_IOS; i++) {
        for (int pos = 0; pos < memSeg.size(); pos += 4) {
          memSeg.putInt(pos, i);
        }
       
        writer.writeBlock(memSeg);
        memSeg = writer.getNextReturnedSegment();
      }
     
      writer.close();
     
      final BlockChannelReader reader = this.ioManager.createBlockChannelReader(channelID);
      for (int i = 0; i < NUM_IOS; i++) {
        reader.readBlock(memSeg);
        memSeg = reader.getNextReturnedSegment();
       
        for (int pos = 0; pos < memSeg.size(); pos += 4) {
          if (memSeg.getInt(pos) != i) {
            Assert.fail("Read memory segment contains invalid data.");
          }
        }
      }
     
View Full Code Here

      final List<MemorySegment> memSegs = this.memoryManager.allocatePages(new DummyInvokable(), NUM_SEGS);
      final Channel.ID channelID = this.ioManager.createChannel();
      final BlockChannelWriter writer = this.ioManager.createBlockChannelWriter(channelID);
     
      for (int i = 0; i < NUM_IOS; i++) {
        final MemorySegment memSeg = memSegs.isEmpty() ? writer.getNextReturnedSegment() : memSegs.remove(0);
       
        for (int pos = 0; pos < memSeg.size(); pos += 4) {
          memSeg.putInt(pos, i);
        }
       
        writer.writeBlock(memSeg);
      }
      writer.close();
     
      // get back the memory
      while (memSegs.size() < NUM_SEGS) {
        memSegs.add(writer.getNextReturnedSegment());
      }
     
      final BlockChannelReader reader = this.ioManager.createBlockChannelReader(channelID);
      while(!memSegs.isEmpty()) {
        reader.readBlock(memSegs.remove(0));
      }
     
      for (int i = 0; i < NUM_IOS; i++) {
        final MemorySegment memSeg = reader.getNextReturnedSegment();
       
        for (int pos = 0; pos < memSeg.size(); pos += 4) {
          if (memSeg.getInt(pos) != i) {
            Assert.fail("Read memory segment contains invalid data.");
          }
        }
        reader.readBlock(memSeg);
      }
View Full Code Here

  // --------------------------------- Normalized key tests -------------------------------------
 
  // Help Function for setting up a memory segment and normalize the keys of the data array in it
  public MemorySegment setupNormalizedKeysMemSegment(T[] data, int normKeyLen, TypeComparator<T> comparator) {
    MemorySegment memSeg = new MemorySegment(new byte[2048]);

    // Setup normalized Keys in the memory segment
    int offset = 0;
    for (T e : data) {
      comparator.putNormalizedKey(e, memSeg, offset, normKeyLen);
View Full Code Here

    try {
      TypeComparator<T> comparator = getComparator(true);
      T[] data = getSortedData();
      int normKeyLen = getNormKeyLen(halfLength, data, comparator);

      MemorySegment memSeg1 = setupNormalizedKeysMemSegment(data, normKeyLen, comparator);
      MemorySegment memSeg2 = setupNormalizedKeysMemSegment(data, normKeyLen, comparator);

      for (int i = 0; i < data.length; i++) {
        assertTrue(MemorySegment.compare(memSeg1, memSeg2, i * normKeyLen, i * normKeyLen, normKeyLen) == 0);
      }
    } catch (Exception e) {
View Full Code Here

TOP

Related Classes of org.apache.flink.core.memory.MemorySegment

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.