whn09 ed49792a0c Add AWS Trainium (Neuron) platform, basic mode — part 1
Run DeepInfer on the native torch-neuronx device (PrivateUse1 `neuron`,
torch-neuronx 2.14, no torch-xla), following the Ascend port's structure.

- deep_cluster: Neuron discovery (one DeepInfer device = one logical
  NeuronCore, NEURON_RT_VISIBLE_CORES, NUMA from neuron-ls).
- PlatformNeuron: takes the Ascend (is_npu) kernel layouts, adds is_neuron;
  DEEPINFER_NEURON_DEVICE=cpu runs the same code on the host for
  correctness work.
- neuron_ops/transfer_to_neuron: map "cuda" devices, torch.device and
  torch.cuda.* onto neuron:0 (counterpart of torch_npu transfer_to_npu).
- C++ extension: -DWITH_NEURON host-only build; torch-allocated buffers and
  tensor-view slot copies instead of raw device-pointer copies.
- Pure-torch drop-in vendor packages (Ascend API semantics): deep_gemm,
  flash_mla, deep_select, tile_kernels, tilelang (constants only).
- tilelang_ops/neuron backend: KV cache / metadata / norm / compress kernels;
  CP, ZOS and VL entry points raise NotImplementedError.
- Basic mode defaults on Neuron: eager, no DSpark/MTP drafting, no
  zero-overhead scheduling; MoE avoids the GPU-only mega kernel; mHC
  prenorm GEMM uses the Ascend single-split reduction.

Not yet included: deep_ep, the sampling kernels, end-to-end harness.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 18:34:51 +08:00
..
asc initial commit 2026-10-20 12:09:42 +08:00
cuda initial commit 2026-10-20 12:09:42 +08:00
neuron Add AWS Trainium (Neuron) platform, basic mode — part 1 2026-10-20 18:34:51 +08:00
__init__.py initial commit 2026-10-20 12:09:42 +08:00
cache_common.py initial commit 2026-10-20 12:09:42 +08:00
candidate_blocks.py initial commit 2026-10-20 12:09:42 +08:00
common.py initial commit 2026-10-20 12:09:42 +08:00
compress.py initial commit 2026-10-20 12:09:42 +08:00
compute_seqlens_k_zos.py initial commit 2026-10-20 12:09:42 +08:00
conftest.py initial commit 2026-10-20 12:09:42 +08:00
dflash_copy.py initial commit 2026-10-20 12:09:42 +08:00
dflash.py initial commit 2026-10-20 12:09:42 +08:00
flash_mla_utils.py initial commit 2026-10-20 12:09:42 +08:00
fused_sample.py initial commit 2026-10-20 12:09:42 +08:00
fused_transform.py initial commit 2026-10-20 12:09:42 +08:00
gather_engram_tokens_zos.py initial commit 2026-10-20 12:09:42 +08:00
gather_input_ids_zos.py initial commit 2026-10-20 12:09:42 +08:00
gather.py initial commit 2026-10-20 12:09:42 +08:00
get_kv_index.py initial commit 2026-10-20 12:09:42 +08:00
image_embed_ops.py initial commit 2026-10-20 12:09:42 +08:00
kv_index_cat.py initial commit 2026-10-20 12:09:42 +08:00
load_paged_kv_cache.py initial commit 2026-10-20 12:09:42 +08:00
norm.py initial commit 2026-10-20 12:09:42 +08:00
ops.py initial commit 2026-10-20 12:09:42 +08:00
outlier_detection.py initial commit 2026-10-20 12:09:42 +08:00
prepare_cp_mirror.py initial commit 2026-10-20 12:09:42 +08:00
prepare_v4_decode_metadata.py initial commit 2026-10-20 12:09:42 +08:00
random_sampling.py initial commit 2026-10-20 12:09:42 +08:00
sampler.py initial commit 2026-10-20 12:09:42 +08:00
schedule_mtp_varlen.py initial commit 2026-10-20 12:09:42 +08:00
state_cache.py initial commit 2026-10-20 12:09:42 +08:00
store_kv_cache.py initial commit 2026-10-20 12:09:42 +08:00
store_mtp_info.py initial commit 2026-10-20 12:09:42 +08:00
structure_output.py initial commit 2026-10-20 12:09:42 +08:00
sum_smaller_probs.py initial commit 2026-10-20 12:09:42 +08:00
swa_index.py initial commit 2026-10-20 12:09:42 +08:00