chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
from typing import Callable, Iterable, List
|
||||
|
||||
import numpy as np
|
||||
|
||||
from ray.experimental.raysort.types import BlockInfo
|
||||
|
||||
|
||||
def get_boundaries(num_parts: int) -> List[int]:
|
||||
return [0] * num_parts
|
||||
|
||||
|
||||
def sort_and_partition(part: np.ndarray, boundaries: List[int]) -> List[BlockInfo]:
|
||||
N = len(boundaries)
|
||||
offset = 0
|
||||
size = int(np.ceil(part.size / N))
|
||||
blocks = []
|
||||
for _ in range(N):
|
||||
blocks.append((offset, size))
|
||||
offset += size
|
||||
return blocks
|
||||
|
||||
|
||||
def merge_partitions(
|
||||
num_blocks: int, get_block: Callable[[int, int], np.ndarray]
|
||||
) -> Iterable[memoryview]:
|
||||
blocks = [get_block(i, 0) for i in range(num_blocks)]
|
||||
for block in blocks:
|
||||
yield block
|
||||
Reference in New Issue
Block a user