From b5a7147c3d95b8947b8ddaf12b11b3a4a202894e Mon Sep 17 00:00:00 2001 From: Andrej Jakovljevic Date: Fri, 22 Nov 2024 17:37:50 +0100 Subject: [PATCH 01/37] Added extra check in reshape for shapes whose less is less than 2 (#15200 fix) (#15201) [Link to Github Issue](https://github.com/tenstorrent/tt-metal/issues/15200) ### Problem description: Due to a tiling check in ReshapeViewOperation::invoke which indexes -2 index of the shape of the tensor, the check fails if the shape rank is 1, this MR fixes that. ### What's changed Added an additional check in `ReshapeViewOperation::invoke` and changed the special case for rank=1. --- .../data_movement/reshape_view/reshape.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/ttnn/cpp/ttnn/operations/data_movement/reshape_view/reshape.cpp b/ttnn/cpp/ttnn/operations/data_movement/reshape_view/reshape.cpp index 5684d84eff8..8735a5bc174 100644 --- a/ttnn/cpp/ttnn/operations/data_movement/reshape_view/reshape.cpp +++ b/ttnn/cpp/ttnn/operations/data_movement/reshape_view/reshape.cpp @@ -114,7 +114,7 @@ ttnn::Shape tiling_reshape_corrector(const ttnn::Shape& shape) { const int8_t correction_1 =(ttnn::types::TILE_SIZE - (int)padded[-1] % ttnn::types::TILE_SIZE) % ttnn::types::TILE_SIZE; if(rank == 1) { - return ttnn::Shape({shape[0]},{padded[0]+correction_1}); + return ttnn::Shape({1, shape[0]}, {32, padded[0]+correction_1}); } const int8_t correction_2 =(ttnn::types::TILE_SIZE - (int)padded[-2] % ttnn::types::TILE_SIZE) % ttnn::types::TILE_SIZE; switch(rank) @@ -172,13 +172,16 @@ ttnn::Tensor ReshapeViewOperation::invoke(const ttnn::Tensor& tensor, const ttnn //For view the following cases work: //RM: The last dimension is the same //Tiled: The last two dimensions are the same or there is no padding on the second last dimension + const uint32_t shape_second_last_dim = shape.rank() >= 2 ? shape[-2] : 1; + const uint32_t tensor_shape_second_last_dim = tensor_shape.rank() >= 2 ? tensor_shape[-2] : 1; bool this_is_view = (tensor_shape[-1] == shape[-1]) && ((tensor.get_layout() == ttnn::ROW_MAJOR_LAYOUT) || //Its row major - (tensor_shape[-2]==shape[-2]) || //Second last dimension is the same - (shape[-2]%ttnn::types::TILE_SIZE==0 && tensor_shape[-2]%ttnn::types::TILE_SIZE==0)); //There is no padding on the second last dimension + (shape_second_last_dim==tensor_shape_second_last_dim) || //Second last dimension is the same + (shape_second_last_dim%ttnn::types::TILE_SIZE==0 && tensor_shape_second_last_dim%ttnn::types::TILE_SIZE==0)); //There is no padding on the second last dimension + bool tile_tensor_view_reshape_possible = (layout == ttnn::Layout::TILE and - ((shape.with_tile_padding()[-2] % ttnn::TILE_SIZE == 0) and (shape.with_tile_padding()[-1] % ttnn::TILE_SIZE == 0)) and - (tensor_shape.with_tile_padding()[-1] == shape.with_tile_padding()[-1]) + shape.with_tile_padding().rank() >= 2 and shape.with_tile_padding()[-2] % ttnn::TILE_SIZE == 0 and shape.with_tile_padding()[-1] % ttnn::TILE_SIZE == 0 and + tensor_shape.with_tile_padding()[-1] == shape.with_tile_padding()[-1] ); if (!(ttnn::has_storage_type_of(tensor, ttnn::StorageType::DEVICE)) or tile_tensor_view_reshape_possible) { From b43685bdf9fdcaced11c0744d266837e258633f3 Mon Sep 17 00:00:00 2001 From: Patrick Roberts Date: Sat, 16 Nov 2024 00:05:49 +0000 Subject: [PATCH 02/37] #14361: Finish implementing metal 1.0 API --- tt_metal/impl/CMakeLists.txt | 1 + tt_metal/impl/buffers/buffer.cpp | 19 ++- tt_metal/impl/device/device.cpp | 93 ++++++++++- tt_metal/impl/device/device.hpp | 8 +- tt_metal/impl/device/device_pool.cpp | 15 +- tt_metal/impl/device/device_pool.hpp | 13 +- tt_metal/impl/dispatch/command_queue.cpp | 36 +++++ tt_metal/impl/event/event.cpp | 57 +++++++ tt_metal/impl/event/event.hpp | 36 ++--- tt_metal/impl/kernels/kernel.cpp | 35 +++- tt_metal/impl/trace/trace.cpp | 30 +++- tt_metal/include/tt_metal/buffer.hpp | 29 ++-- tt_metal/include/tt_metal/command_queue.hpp | 36 +++-- tt_metal/include/tt_metal/device.hpp | 167 +++++++------------- tt_metal/include/tt_metal/event.hpp | 29 ++-- tt_metal/include/tt_metal/kernel.hpp | 37 ++--- tt_metal/include/tt_metal/trace.hpp | 31 ++-- tt_metal/include/tt_metal/types.hpp | 59 +++++-- 18 files changed, 470 insertions(+), 261 deletions(-) create mode 100644 tt_metal/impl/event/event.cpp diff --git a/tt_metal/impl/CMakeLists.txt b/tt_metal/impl/CMakeLists.txt index bd156e29c36..c4fed21b4a2 100644 --- a/tt_metal/impl/CMakeLists.txt +++ b/tt_metal/impl/CMakeLists.txt @@ -24,6 +24,7 @@ set(IMPL_SRC ${CMAKE_CURRENT_SOURCE_DIR}/debug/watcher_device_reader.cpp ${CMAKE_CURRENT_SOURCE_DIR}/trace/trace.cpp ${CMAKE_CURRENT_SOURCE_DIR}/trace/trace_buffer.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/event/event.cpp ) add_library(impl OBJECT ${IMPL_SRC}) diff --git a/tt_metal/impl/buffers/buffer.cpp b/tt_metal/impl/buffers/buffer.cpp index ac492ccd2c1..1517507ba2d 100644 --- a/tt_metal/impl/buffers/buffer.cpp +++ b/tt_metal/impl/buffers/buffer.cpp @@ -4,15 +4,16 @@ #include "tt_metal/impl/buffers/buffer.hpp" +#include "tt_metal/buffer.hpp" #include "tt_metal/common/assert.hpp" #include "tt_metal/common/math.hpp" #include "tt_metal/detail/tt_metal.hpp" #include "tt_metal/impl/allocator/allocator.hpp" #include "tt_metal/impl/device/device.hpp" +#include "tt_metal/types.hpp" #include #include -#include #include #include "tt_metal/common/base.hpp" #include "tt_metal/impl/buffers/buffer_constants.hpp" @@ -514,6 +515,22 @@ DeviceAddr ShardSpecBuffer::size() const { return shape_in_pages_[0] * shape_in_pages_[1]; } +v1::BufferHandle v1::CreateBuffer(InterleavedBufferConfig config) { return v1::BufferHandle{v0::CreateBuffer(config)}; } + +void v1::DeallocateBuffer(BufferHandle buffer) { v0::DeallocateBuffer(*buffer); } + +void v1::WriteToBuffer(BufferHandle buffer, stl::Span host_buffer) { + detail::WriteToBuffer(*buffer, stl::Span{reinterpret_cast(host_buffer.data()), host_buffer.size()}); +} + +void v1::ReadFromBuffer(BufferHandle buffer, stl::Span host_buffer, bool shard_order) { + detail::ReadFromBuffer(*buffer, reinterpret_cast(host_buffer.data()), shard_order); +} + +void v1::ReadFromShard(BufferHandle buffer, stl::Span host_buffer, std::uint32_t core_id) { + detail::ReadShard(*buffer, reinterpret_cast(host_buffer.data()), core_id); +} + } // namespace tt_metal } // namespace tt diff --git a/tt_metal/impl/device/device.cpp b/tt_metal/impl/device/device.cpp index 3b5ab120d0f..4b42ae7fa1a 100644 --- a/tt_metal/impl/device/device.cpp +++ b/tt_metal/impl/device/device.cpp @@ -3,8 +3,9 @@ // SPDX-License-Identifier: Apache-2.0 #include -#include -#include +#include +#include "tt_metal/device.hpp" +#include "common/core_coord.hpp" #include "tt_metal/host_api.hpp" #include "tt_metal/jit_build/genfiles.hpp" #include "tt_metal/impl/device/device.hpp" @@ -14,7 +15,6 @@ #include "tt_metal/detail/tt_metal.hpp" #include "impl/debug/dprint_server.hpp" #include "impl/debug/watcher_server.hpp" -#include "common/env_lib.hpp" #include "tt_metal/impl/dispatch/kernels/packet_queue_ctrl.hpp" #include "common/utils.hpp" #include "llrt/llrt.hpp" @@ -28,13 +28,14 @@ #include "tt_metal/impl/sub_device/sub_device_manager.hpp" #include "tt_metal/impl/sub_device/sub_device_types.hpp" #include "tt_metal/tt_stl/span.hpp" +#include "tt_metal/types.hpp" namespace tt { namespace tt_metal { Device::Device( - chip_id_t device_id, const uint8_t num_hw_cqs, size_t l1_small_size, size_t trace_region_size, const std::vector &l1_bank_remap, bool minimal, uint32_t worker_core, uint32_t completion_queue_reader_core) : + chip_id_t device_id, const uint8_t num_hw_cqs, size_t l1_small_size, size_t trace_region_size, tt::stl::Span l1_bank_remap, bool minimal, uint32_t worker_core, uint32_t completion_queue_reader_core) : id_(device_id), worker_thread_core(worker_core), completion_queue_reader_core(completion_queue_reader_core), work_executor(worker_core, device_id) { ZoneScoped; tunnel_device_dispatch_workers_ = {}; @@ -208,7 +209,7 @@ void Device::initialize_cluster() { log_info(tt::LogMetal, "AI CLK for device {} is: {} MHz", this->id_, ai_clk); } -void Device::initialize_default_sub_device_state(size_t l1_small_size, size_t trace_region_size, const std::vector &l1_bank_remap) { +void Device::initialize_default_sub_device_state(size_t l1_small_size, size_t trace_region_size, tt::stl::Span l1_bank_remap) { // Create the default sub-device manager representing the entire chip this->next_sub_device_manager_id_ = {0}; auto [sub_device_manager, _] = this->sub_device_managers_.insert_or_assign(this->get_next_sub_device_manager_id(), std::make_unique(this, this->initialize_allocator(l1_small_size, trace_region_size, l1_bank_remap))); @@ -220,7 +221,7 @@ void Device::initialize_default_sub_device_state(size_t l1_small_size, size_t tr } -std::unique_ptr Device::initialize_allocator(size_t l1_small_size, size_t trace_region_size, const std::vector &l1_bank_remap) { +std::unique_ptr Device::initialize_allocator(size_t l1_small_size, size_t trace_region_size, tt::stl::Span l1_bank_remap) { ZoneScoped; const metal_SocDescriptor &soc_desc = tt::Cluster::instance().get_soc_desc(this->id_); CoreType dispatch_core_type = dispatch_core_manager::instance().get_dispatch_core_type(this->id_); @@ -246,7 +247,7 @@ std::unique_ptr Device::initialize_allocator(size_t l1_small_size, si .core_type_from_noc_coord_table = {}, // Populated later .worker_log_to_physical_routing_x = soc_desc.worker_log_to_physical_routing_x, .worker_log_to_physical_routing_y = soc_desc.worker_log_to_physical_routing_y, - .l1_bank_remap = l1_bank_remap, + .l1_bank_remap = {l1_bank_remap.begin(), l1_bank_remap.end()}, .compute_grid = CoreRangeSet(CoreRange(CoreCoord(0, 0), CoreCoord(compute_size.x - 1, compute_size.y - 1))), .alignment = std::max(hal.get_alignment(HalMemType::DRAM), hal.get_alignment(HalMemType::L1)), .disable_interleaved = false}); @@ -2930,7 +2931,7 @@ void Device::initialize_synchronous_sw_cmd_queue() { } } -bool Device::initialize(const uint8_t num_hw_cqs, size_t l1_small_size, size_t trace_region_size, const std::vector &l1_bank_remap, bool minimal) { +bool Device::initialize(const uint8_t num_hw_cqs, size_t l1_small_size, size_t trace_region_size, tt::stl::Span l1_bank_remap, bool minimal) { ZoneScoped; log_info(tt::LogMetal, "Initializing device {}. Program cache is {}enabled", this->id_, this->program_cache.is_enabled() ? "": "NOT "); log_debug(tt::LogMetal, "Running with {} cqs ", num_hw_cqs); @@ -3665,6 +3666,82 @@ const std::vector &Device::get_sub_device_ids() const { return this->active_sub_device_manager_->get_sub_device_ids(); } +size_t v1::GetNumAvailableDevices() { return tt::Cluster::instance().number_of_user_devices(); } + +size_t v1::GetNumPCIeDevices() { return tt::Cluster::instance().number_of_pci_devices(); } + +chip_id_t v1::GetPCIeDeviceID(chip_id_t device_id) { + return tt::Cluster::instance().get_associated_mmio_device(device_id); +} + +v1::DeviceHandle v1::CreateDevice(chip_id_t device_id, CreateDeviceOptions options) { + ZoneScoped; + + tt::DevicePool::initialize( + {device_id}, + options.num_hw_cqs, + options.l1_small_size, + options.trace_region_size, + options.dispatch_core_type, + options.l1_bank_remap); + + return tt::DevicePool::instance().get_active_device(device_id); +} + +bool v1::CloseDevice(DeviceHandle device) { return v0::CloseDevice(device); } + +void v1::DeallocateBuffers(DeviceHandle device) { device->deallocate_buffers(); } + +void v1::DumpDeviceProfileResults(DeviceHandle device, const CoreRangeSet &worker_cores, bool last_dump) { + auto worker_cores_vec = corerange_to_cores(worker_cores); + detail::DumpDeviceProfileResults(device, worker_cores_vec, last_dump); +} + +ARCH v1::GetArch(DeviceHandle device) { return device->arch(); } + +chip_id_t v1::GetId(DeviceHandle device) { return device->id(); } + +int v1::GetNumDramChannels(DeviceHandle device) { return device->num_dram_channels(); } + +std::uint32_t v1::GetL1SizePerCore(DeviceHandle device) { return device->l1_size_per_core(); } + +CoreCoord v1::GetComputeWithStorageGridSize(DeviceHandle device) { return device->compute_with_storage_grid_size(); } + +CoreCoord v1::GetDramGridSize(DeviceHandle device) { return device->dram_grid_size(); } + +void v1::EnableProgramCache(DeviceHandle device) { device->enable_program_cache(); } + +void v1::DisableAndClearProgramCache(DeviceHandle device) { device->disable_and_clear_program_cache(); } + +void v1::PushWork(DeviceHandle device, std::function work, bool blocking) { + device->push_work(std::move(work), blocking); +} + +void v1::Synchronize(DeviceHandle device) { device->synchronize(); } + +std::vector v1::GetEthernetSockets(DeviceHandle device, chip_id_t connected_chip_id) { + return device->get_ethernet_sockets(connected_chip_id); +} + +std::uint32_t v1::GetNumBanks(DeviceHandle device, BufferType buffer_type) { return device->num_banks(buffer_type); } + +std::int32_t v1::GetBankOffset(DeviceHandle device, BufferType buffer_type, std::uint32_t bank_id) { + return device->bank_offset(buffer_type, bank_id); +} + +tt::stl::Span v1::BankIdsFromLogicalCore( + DeviceHandle device, BufferType buffer_type, CoreCoord logical_core) { + return device->bank_ids_from_logical_core(buffer_type, logical_core); +} + +float v1::GetSfpuEps(DeviceHandle device) { return device->sfpu_eps(); } + +float v1::GetSfpuNan(DeviceHandle device) { return device->sfpu_nan(); } + +float v1::GetSfpuInf(DeviceHandle device) { return device->sfpu_inf(); } + +std::size_t v1::GetNumProgramCacheEntries(DeviceHandle device) { return device->num_program_cache_entries(); } + } // namespace tt_metal } // namespace tt diff --git a/tt_metal/impl/device/device.hpp b/tt_metal/impl/device/device.hpp index add6a9535f2..3f48d284858 100644 --- a/tt_metal/impl/device/device.hpp +++ b/tt_metal/impl/device/device.hpp @@ -72,7 +72,7 @@ class Device { const uint8_t num_hw_cqs, std::size_t l1_small_size, std::size_t trace_region_size, - const std::vector &l1_bank_remap = {}, + tt::stl::Span l1_bank_remap = {}, bool minimal = false, uint32_t worker_core = 0, uint32_t completion_queue_reader_core = 0); @@ -253,9 +253,9 @@ class Device { // Checks that the given arch is on the given pci_slot and that it's responding // Puts device into reset - bool initialize(const uint8_t num_hw_cqs, size_t l1_small_size, size_t trace_region_size, const std::vector &l1_bank_remap = {}, bool minimal = false); + bool initialize(const uint8_t num_hw_cqs, size_t l1_small_size, size_t trace_region_size, tt::stl::Span l1_bank_remap = {}, bool minimal = false); void initialize_cluster(); - std::unique_ptr initialize_allocator(size_t l1_small_size, size_t trace_region_size, const std::vector &l1_bank_remap = {}); + std::unique_ptr initialize_allocator(size_t l1_small_size, size_t trace_region_size, tt::stl::Span l1_bank_remap = {}); void initialize_build(); void initialize_device_kernel_defines(); void build_firmware(); @@ -383,7 +383,7 @@ class Device { void remove_sub_device_manager(SubDeviceManagerId sub_device_manager_id); const std::vector &get_sub_device_ids() const; private: - void initialize_default_sub_device_state(size_t l1_small_size, size_t trace_region_size, const std::vector &l1_bank_remap); + void initialize_default_sub_device_state(size_t l1_small_size, size_t trace_region_size, tt::stl::Span l1_bank_remap); SubDeviceManagerId get_next_sub_device_manager_id(); void reset_sub_devices_state(const std::unique_ptr& sub_device_manager); void MarkAllocationsUnsafe(); diff --git a/tt_metal/impl/device/device_pool.cpp b/tt_metal/impl/device/device_pool.cpp index 81121723693..bdbc4a80f1f 100644 --- a/tt_metal/impl/device/device_pool.cpp +++ b/tt_metal/impl/device/device_pool.cpp @@ -7,6 +7,8 @@ #include #include "tt_metal/detail/tt_metal.hpp" +#include "tt_metal/impl/debug/noc_logging.hpp" +#include "tt_metal/impl/debug/watcher_server.hpp" #include "tt_metal/impl/device/device_handle.hpp" using namespace tt::tt_metal; @@ -179,19 +181,19 @@ void DevicePool::initialize( size_t l1_small_size, size_t trace_region_size, DispatchCoreType dispatch_core_type, - const std::vector &l1_bank_remap) noexcept { + tt::stl::Span l1_bank_remap) noexcept { ZoneScoped; log_debug(tt::LogMetal, "DevicePool initialize"); tt::tt_metal::dispatch_core_manager::initialize(dispatch_core_type, num_hw_cqs); if (_inst == nullptr) { - static DevicePool device_pool(device_ids, num_hw_cqs, l1_small_size, trace_region_size, l1_bank_remap); + static DevicePool device_pool{}; _inst = &device_pool; } _inst->l1_small_size = l1_small_size; _inst->trace_region_size = trace_region_size; _inst->num_hw_cqs = num_hw_cqs; - _inst->l1_bank_remap = l1_bank_remap; + _inst->l1_bank_remap.assign(l1_bank_remap.begin(), l1_bank_remap.end()); // Track the thread where the Device Pool was created. Certain functions // modifying the state of this instance, for example those responsible for // (un)registering worker threads, can only be called in the creation thread @@ -388,12 +390,7 @@ void DevicePool::init_firmware_on_active_devices() const { } } -DevicePool::DevicePool( - std::vector device_ids, - const uint8_t num_hw_cqs, - size_t l1_small_size, - size_t trace_region_size, - const std::vector& l1_bank_remap) { +DevicePool::DevicePool() { ZoneScoped; log_debug(tt::LogMetal, "DevicePool constructor"); bool use_numa_node_based_thread_binding = parse_env("TT_METAL_NUMA_BASED_AFFINITY", false); diff --git a/tt_metal/impl/device/device_pool.hpp b/tt_metal/impl/device/device_pool.hpp index 87b928d784e..e57e06ab839 100644 --- a/tt_metal/impl/device/device_pool.hpp +++ b/tt_metal/impl/device/device_pool.hpp @@ -4,13 +4,11 @@ #pragma once +#include "tt_cluster_descriptor_types.h" #include "tt_metal/host_api.hpp" #include "impl/debug/dprint_server.hpp" -#include "impl/debug/noc_logging.hpp" -#include "impl/debug/watcher_server.hpp" #include "tt_metal/impl/device/device.hpp" #include "tt_metal/impl/device/device_handle.hpp" -#include "tt_metal/third_party/umd/device/tt_cluster_descriptor.h" namespace tt { namespace tt_metal::detail { @@ -41,7 +39,7 @@ class DevicePool { size_t l1_small_size, size_t trace_region_size, tt_metal::DispatchCoreType dispatch_core_type, - const std::vector &l1_bank_remap = {}) noexcept; + tt::stl::Span l1_bank_remap = {}) noexcept; tt_metal::v1::DeviceHandle get_active_device(chip_id_t device_id) const; std::vector get_all_active_devices() const; @@ -53,12 +51,7 @@ class DevicePool { const std::unordered_set& get_worker_thread_ids() const; private: ~DevicePool(); - DevicePool( - std::vector device_ids, - const uint8_t num_hw_cqs, - size_t l1_small_size, - size_t trace_region_size, - const std::vector &l1_bank_remap); + DevicePool(); uint8_t num_hw_cqs; size_t l1_small_size; size_t trace_region_size; diff --git a/tt_metal/impl/dispatch/command_queue.cpp b/tt_metal/impl/dispatch/command_queue.cpp index fc977b661de..925b0279341 100644 --- a/tt_metal/impl/dispatch/command_queue.cpp +++ b/tt_metal/impl/dispatch/command_queue.cpp @@ -16,8 +16,10 @@ #include "allocator/allocator.hpp" #include "debug_tools.hpp" #include "dev_msgs.h" +#include "device/device_handle.hpp" #include "llrt/hal.hpp" #include "noc/noc_parameters.h" +#include "tt_metal/command_queue.hpp" #include "tt_metal/common/assert.hpp" #include "tt_metal/common/logger.hpp" #include "tt_metal/detail/tt_metal.hpp" @@ -3482,6 +3484,40 @@ void CommandQueue::run_command_impl(const CommandInterface& command) { log_trace(LogDispatch, "{} running {} complete", this->name(), command.type); } +v1::CommandQueueHandle v1::GetCommandQueue(DeviceHandle device, std::uint8_t cq_id) { + return v1::CommandQueueHandle{device, cq_id}; +} + +v1::CommandQueueHandle v1::GetDefaultCommandQueue(DeviceHandle device) { return GetCommandQueue(device, 0); } + +void v1::EnqueueReadBuffer(CommandQueueHandle cq, BufferHandle buffer, std::byte *dst, bool blocking) { + v0::EnqueueReadBuffer(GetDevice(cq)->command_queue(GetId(cq)), *buffer, dst, blocking); +} + +void v1::EnqueueWriteBuffer(CommandQueueHandle cq, BufferHandle buffer, const std::byte *src, bool blocking) { + v0::EnqueueWriteBuffer(GetDevice(cq)->command_queue(GetId(cq)), *buffer, src, blocking); +} + +void v1::EnqueueProgram(CommandQueueHandle cq, ProgramHandle &program, bool blocking) { + v0::EnqueueProgram(GetDevice(cq)->command_queue(GetId(cq)), program, blocking); +} + +void v1::Finish(CommandQueueHandle cq, tt::stl::Span sub_device_ids) { + v0::Finish(GetDevice(cq)->command_queue(GetId(cq))); +} + +void v1::SetLazyCommandQueueMode(bool lazy) { + detail::SetLazyCommandQueueMode(lazy); +} + +v1::DeviceHandle v1::GetDevice(CommandQueueHandle cq) { + return cq.device; +} + +std::uint8_t v1::GetId(CommandQueueHandle cq) { + return cq.id; +} + } // namespace tt::tt_metal std::ostream& operator<<(std::ostream& os, EnqueueCommandType const& type) { diff --git a/tt_metal/impl/event/event.cpp b/tt_metal/impl/event/event.cpp new file mode 100644 index 00000000000..17a877e3708 --- /dev/null +++ b/tt_metal/impl/event/event.cpp @@ -0,0 +1,57 @@ +// SPDX-FileCopyrightText: © 2024 Tenstorrent Inc. +// +// SPDX-License-Identifier: Apache-2.0 + +#include "tt_metal/impl/event/event.hpp" + +#include + +#include "tt_metal/common/assert.hpp" +#include "tt_metal/common/logger.hpp" +#include "tt_metal/event.hpp" + +namespace tt::tt_metal { + +void Event::wait_until_ready() { + while (!ready) { + std::this_thread::sleep_for(std::chrono::microseconds(10)); + log_trace( + tt::LogMetal, + "Waiting for Event to be ready. (ready: {} cq_id: {} event_id: {})", + bool(ready), + cq_id, + event_id); + } + + TT_ASSERT(device != nullptr, "Event must have initialized device ptr"); + TT_ASSERT(event_id != -1, "Event must have initialized event_id"); + TT_ASSERT(cq_id != -1, "Event must have initialized cq_id"); +} + +v1::EventHandle::EventHandle() : EventHandle(std::make_shared()) {} + +v1::EventHandle v1::EnqueueRecordEvent(CommandQueueHandle cq) { + EventHandle event{}; + v0::EnqueueRecordEvent( + GetDevice(cq)->command_queue(GetId(cq)), static_cast &>(event)); + return event; +} + +void v1::EnqueueWaitForEvent(CommandQueueHandle cq, EventHandle event) { + v0::EnqueueWaitForEvent( + GetDevice(cq)->command_queue(GetId(cq)), static_cast &>(event)); +} + +void v1::EventSynchronize(EventHandle event) { + v0::EventSynchronize(static_cast &>(event)); +} + +bool v1::EventQuery(EventHandle event) { + return v0::EventQuery(static_cast &>(event)); +} + +void v1::DeviceSynchronize(DeviceHandle device) { v0::Synchronize(device); } + +void v1::CommandQueueSynchronize(CommandQueueHandle cq) { v0::Synchronize(GetDevice(cq), GetId(cq)); } + +} // namespace tt::tt_metal diff --git a/tt_metal/impl/event/event.hpp b/tt_metal/impl/event/event.hpp index 17503153a30..80c21f85544 100644 --- a/tt_metal/impl/event/event.hpp +++ b/tt_metal/impl/event/event.hpp @@ -4,32 +4,24 @@ #pragma once +#include #include -#include -#include "tt_metal/common/assert.hpp" -#include "tt_metal/common/logger.hpp" + namespace tt::tt_metal { inline namespace v0 { - class Device; - struct Event - { - Device * device = nullptr; - uint32_t cq_id = -1; - uint32_t event_id = -1; - std::atomic ready = false; // Event is ready for use. - // With async CQ, must wait until event is populated by child thread before using. - // Opened #5988 to track removing this, and finding different solution. - void wait_until_ready() { - while (!ready) { - std::this_thread::sleep_for(std::chrono::microseconds(10)); - log_trace(tt::LogMetal, "Waiting for Event to be ready. (ready: {} cq_id: {} event_id: {})", bool(ready), cq_id, event_id); - } +class Device; + +struct Event { + Device *device = nullptr; + uint32_t cq_id = -1; + uint32_t event_id = -1; + std::atomic ready = false; // Event is ready for use. + + // With async CQ, must wait until event is populated by child thread before using. + // Opened #5988 to track removing this, and finding different solution. + void wait_until_ready(); +}; - TT_ASSERT(device != nullptr, "Event must have initialized device ptr"); - TT_ASSERT(event_id != -1, "Event must have initialized event_id"); - TT_ASSERT(cq_id != -1, "Event must have initialized cq_id"); - } - }; } // namespace v0 } // namespace tt::tt_metal diff --git a/tt_metal/impl/kernels/kernel.cpp b/tt_metal/impl/kernels/kernel.cpp index df5c6478a75..02f2ecf12e1 100644 --- a/tt_metal/impl/kernels/kernel.cpp +++ b/tt_metal/impl/kernels/kernel.cpp @@ -13,7 +13,7 @@ #include "llrt/llrt.hpp" #include "tt_metal/detail/tt_metal.hpp" #include "tt_metal/impl/debug/watcher_server.hpp" -#include "tt_metal/third_party/tracy/public/tracy/Tracy.hpp" +#include "tt_metal/kernel.hpp" #include "tt_metal/common/utils.hpp" #include "tt_metal/common/core_coord.hpp" #include "tt_metal/jit_build/genfiles.hpp" @@ -502,6 +502,39 @@ std::ostream &operator<<(std::ostream &os, const DataMovementProcessor &processo return os; } +void v1::SetRuntimeArgs( + ProgramHandle &program, KernelHandle kernel, const CoreRangeSet &core_spec, RuntimeArgs runtime_args) { + if (runtime_args.empty()) { + return; + } + + const auto kernel_ptr = detail::GetKernel(program, static_cast(kernel)); + + for (const auto &core_range : core_spec.ranges()) { + for (auto x = core_range.start_coord.x; x <= core_range.end_coord.x; ++x) { + for (auto y = core_range.start_coord.y; y <= core_range.end_coord.y; ++y) { + kernel_ptr->set_runtime_args(CoreCoord(x, y), runtime_args); + } + } + } +} + +void v1::SetCommonRuntimeArgs(ProgramHandle &program, KernelHandle kernel, RuntimeArgs runtime_args) { + if (runtime_args.empty()) { + return; + } + + const auto kernel_ptr = detail::GetKernel(program, static_cast(kernel)); + + kernel_ptr->set_common_runtime_args(runtime_args); +} + +v1::RuntimeArgs v1::GetRuntimeArgs(ProgramHandle &program, KernelHandle kernel, CoreCoord logical_core) { + const auto kernel_ptr = detail::GetKernel(program, static_cast(kernel)); + + return kernel_ptr->runtime_args(logical_core); +} + } // namespace tt_metal } // namespace tt diff --git a/tt_metal/impl/trace/trace.cpp b/tt_metal/impl/trace/trace.cpp index 3ed36350c2d..d08826d30f7 100644 --- a/tt_metal/impl/trace/trace.cpp +++ b/tt_metal/impl/trace/trace.cpp @@ -5,15 +5,14 @@ #include "impl/trace/trace.hpp" #include -#include -#include "dispatch/device_command.hpp" #include "tt_metal/common/logger.hpp" #include "tt_metal/detail/tt_metal.hpp" #include "tt_metal/host_api.hpp" #include "tt_metal/impl/device/device.hpp" #include "tt_metal/impl/dispatch/command_queue.hpp" #include "tt_metal/impl/trace/trace.hpp" +#include "tt_metal/trace.hpp" namespace { // Labels to make the code more readable @@ -108,4 +107,31 @@ void Trace::validate_instance(const TraceBuffer& trace_buffer) { // add more checks } +v1::CommandQueueHandle v1::GetCommandQueue(TraceHandle trace) { return trace.cq; } + +v1::TraceHandle v1::BeginTraceCapture(CommandQueueHandle cq) { + const auto tid = v0::BeginTraceCapture(GetDevice(cq), GetId(cq)); + return v1::TraceHandle{cq, tid}; +} + +void v1::EndTraceCapture(TraceHandle trace) { + const auto cq = GetCommandQueue(trace); + v0::EndTraceCapture(GetDevice(cq), GetId(cq), static_cast(trace)); +} + +void v1::ReplayTrace(TraceHandle trace, bool blocking) { + const auto cq = GetCommandQueue(trace); + v0::ReplayTrace(GetDevice(cq), GetId(cq), static_cast(trace), blocking); +} + +void v1::ReleaseTrace(TraceHandle trace) { + const auto cq = GetCommandQueue(trace); + v0::ReleaseTrace(GetDevice(cq), static_cast(trace)); +} + +void v1::EnqueueTrace(TraceHandle trace, bool blocking) { + const auto cq = GetCommandQueue(trace); + v0::EnqueueTrace(GetDevice(cq)->command_queue(GetId(cq)), static_cast(trace), blocking); +} + } // namespace tt::tt_metal diff --git a/tt_metal/include/tt_metal/buffer.hpp b/tt_metal/include/tt_metal/buffer.hpp index efb44bb7f8c..04a2d93b819 100644 --- a/tt_metal/include/tt_metal/buffer.hpp +++ b/tt_metal/include/tt_metal/buffer.hpp @@ -3,38 +3,30 @@ // SPDX-License-Identifier: Apache-2.0 #pragma once -#include "types.hpp" + #include "tt_metal/impl/buffers/buffer.hpp" +#include "tt_metal/types.hpp" //================================================== // BUFFER HANDLING //================================================== -namespace tt::tt_metal{ +namespace tt::tt_metal { namespace v1 { - /** * @brief Allocates an interleaved DRAM or L1 buffer on the device. * * @param config Configuration for the buffer. * @return Buffer handle to the allocated buffer. */ -Buffer CreateBuffer(const InterleavedBufferConfig &config); - -/** - * @brief Allocates a buffer on the device. - * - * @param buffer The buffer to allocate. - * @param bottom_up If true, allocates buffer from the bottom up. - */ -void AllocateBuffer(Buffer buffer, bool bottom_up); +BufferHandle CreateBuffer(InterleavedBufferConfig config); /** * @brief Deallocates a buffer from the device. * * @param buffer The buffer to deallocate. */ -void DeallocateBuffer(Buffer buffer); +void DeallocateBuffer(BufferHandle buffer); /** * @brief Copies data from a host buffer into the specified device buffer. @@ -42,7 +34,7 @@ void DeallocateBuffer(Buffer buffer); * @param buffer Buffer to write data into. * @param host_buffer Host buffer containing data to copy. */ -void WriteToBuffer(Buffer buffer, const std::vector &host_buffer); +void WriteToBuffer(BufferHandle buffer, stl::Span host_buffer); /** * @brief Copies data from a device buffer into a host buffer. @@ -51,7 +43,7 @@ void WriteToBuffer(Buffer buffer, const std::vector &host_buffer); * @param host_buffer Host buffer to copy data into. * @param shard_order If true, reads data in shard order. */ -void ReadFromBuffer(Buffer buffer, std::vector &host_buffer, bool shard_order = false); +void ReadFromBuffer(BufferHandle buffer, stl::Span host_buffer, bool shard_order = false); /** * @brief Copies data from a specific shard of a device buffer into a host buffer. @@ -60,8 +52,7 @@ void ReadFromBuffer(Buffer buffer, std::vector &host_buffer, bool shar * @param host_buffer Host buffer to copy data into. * @param core_id ID of the core shard to read. */ -void ReadFromShard(Buffer buffer, std::vector &host_buffer, const uint32_t &core_id); - +void ReadFromShard(BufferHandle buffer, stl::Span host_buffer, std::uint32_t core_id); -} // namespace v1 -} // namespace tt::tt_metal +} // namespace v1 +} // namespace tt::tt_metal diff --git a/tt_metal/include/tt_metal/command_queue.hpp b/tt_metal/include/tt_metal/command_queue.hpp index e0d9f24149a..9ae1c53af50 100644 --- a/tt_metal/include/tt_metal/command_queue.hpp +++ b/tt_metal/include/tt_metal/command_queue.hpp @@ -6,8 +6,6 @@ #include "types.hpp" -#include "tt_metal/impl/buffers/buffer.hpp" - //================================================== // COMMAND QUEUE OPERATIONS //================================================== @@ -16,6 +14,23 @@ namespace tt::tt_metal{ namespace v1 { +/** + * @brief Retrieves a command queue from the device for a given queue ID. + * + * @param device The device to query. + * @param cq_id The command queue ID. + * @return CommandQueue handle. + */ +CommandQueueHandle GetCommandQueue(DeviceHandle device, std::uint8_t cq_id); + +/** + * @brief Retrieves the default command queue for the given device. + * + * @param device The device to query. + * @return CommandQueue handle. + */ +CommandQueueHandle GetDefaultCommandQueue(DeviceHandle device); + /** * @brief Reads a buffer from the device. * @@ -25,8 +40,8 @@ namespace v1 { * @param blocking Indicates whether the operation is blocking. */ void EnqueueReadBuffer( - CommandQueue cq, - Buffer buffer, + CommandQueueHandle cq, + BufferHandle buffer, std::byte *dst, bool blocking); @@ -39,8 +54,8 @@ void EnqueueReadBuffer( * @param blocking Indicates whether the operation is blocking. */ void EnqueueWriteBuffer( - CommandQueue cq, - Buffer buffer, + CommandQueueHandle cq, + BufferHandle buffer, const std::byte *src, bool blocking); @@ -52,14 +67,15 @@ void EnqueueWriteBuffer( * @param program The program to execute on the device. * @param blocking Indicates whether the operation is blocking. */ -void EnqueueProgram(CommandQueue cq, Program program, bool blocking); +void EnqueueProgram(CommandQueueHandle cq, ProgramHandle &program, bool blocking); /** * @brief Blocks until all previously dispatched commands on the device have completed. * * @param cq The command queue to wait on. + * @param sub_device_ids The sub-device ids to wait for completion on. If empty, waits for all sub-devices. */ -void Finish(CommandQueue cq); +void Finish(CommandQueueHandle cq, tt::stl::Span sub_device_ids = {}); /** @@ -76,7 +92,7 @@ void SetLazyCommandQueueMode(bool lazy); * @param cq The command queue to query. * @return Device handle associated with the command queue. */ -Device GetDevice(class CommandQueue cq); +DeviceHandle GetDevice(CommandQueueHandle cq); /** * @brief Retrieves the ID of the command queue. @@ -84,7 +100,7 @@ Device GetDevice(class CommandQueue cq); * @param cq The command queue to query. * @return ID of the command queue. */ -uint32_t GetId(class CommandQueue cq); +std::uint8_t GetId(CommandQueueHandle cq); } // namespace v1 } // namespace tt::tt_metal diff --git a/tt_metal/include/tt_metal/device.hpp b/tt_metal/include/tt_metal/device.hpp index 90b9f77bada..c07dcd7e961 100644 --- a/tt_metal/include/tt_metal/device.hpp +++ b/tt_metal/include/tt_metal/device.hpp @@ -5,16 +5,16 @@ #pragma once #include -#include "types.hpp" + #include "tt_metal/impl/buffers/buffer_constants.hpp" -#include "tt_metal/impl/buffers/buffer.hpp" #include "tt_metal/impl/dispatch/work_executor.hpp" +#include "tt_metal/types.hpp" //================================================== // DEVICE MANAGEMENT //================================================== -namespace tt::tt_metal{ +namespace tt::tt_metal { namespace v1 { /** @@ -22,14 +22,14 @@ namespace v1 { * * @return Size_t representing the number of available devices. */ -size_t GetNumAvailableDevices(); +std::size_t GetNumAvailableDevices(); /** * @brief Returns the number of Tenstorrent devices connected via PCIe. * * @return Size_t representing the number of PCIe devices. */ -size_t GetNumPCIeDevices(); +std::size_t GetNumPCIeDevices(); /** * @brief Retrieves the PCIe device ID for a given device ID. @@ -39,22 +39,39 @@ size_t GetNumPCIeDevices(); */ chip_id_t GetPCIeDeviceID(chip_id_t device_id); +/** + * Configuration options for CreateDevice + */ +struct CreateDeviceOptions { + /** + * Number of hardware command queues (default: 1, valid range: 1 to 2). + */ + uint8_t num_hw_cqs = 1; + /** + * L1 small space to reserve (default: DEFAULT_L1_SMALL_SIZE). + */ + std::size_t l1_small_size = DEFAULT_L1_SMALL_SIZE; + /** + * Trace region size to reserve (default: DEFAULT_TRACE_REGION_SIZE). + */ + std::size_t trace_region_size = DEFAULT_TRACE_REGION_SIZE; + /** + * Dispatch core type to use (default: DispatchCoreType::WORKER). + */ + DispatchCoreType dispatch_core_type = DispatchCoreType::WORKER; + /** + * For shuffling bank id offsets + */ + stl::Span l1_bank_remap = {}; +}; + /** * @brief Instantiates a Device object. * - * @param device_id ID of the device to target (0 to GetNumAvailableDevices() - 1). - * @param num_hw_cqs Number of hardware command queues (default: 1, valid range: 1 to 2). - * @param l1_small_size L1 small space to reserve (default: DEFAULT_L1_SMALL_SIZE). - * @param trace_region_size Trace region size to reserve (default: DEFAULT_TRACE_REGION_SIZE). - * @param dispatch_core_type Dispatch core type to use (default: DispatchCoreType::WORKER). + * @param options Configuration parameter for requested device * @return Device handle to the created device. */ -Device CreateDevice( - chip_id_t device_id, - uint8_t num_hw_cqs = 1, - size_t l1_small_size = DEFAULT_L1_SMALL_SIZE, - size_t trace_region_size = DEFAULT_TRACE_REGION_SIZE, - DispatchCoreType dispatch_core_type = DispatchCoreType::WORKER); +DeviceHandle CreateDevice(chip_id_t device_id, CreateDeviceOptions options = {}); /** * @brief Resets and closes the device. @@ -62,14 +79,12 @@ Device CreateDevice( * @param device Handle to the device to close. * @return True if the device was successfully closed; otherwise, false. */ -bool CloseDevice(Device device); - +bool CloseDevice(DeviceHandle device); /** * @brief Deallocates all buffers on the device. */ -void DeallocateBuffers(Device device); - +void DeallocateBuffers(DeviceHandle device); /** * @brief Dumps device-side profiler data to a CSV log. @@ -78,8 +93,7 @@ void DeallocateBuffers(Device device); * @param worker_cores CoreRangeSet of worker cores being profiled. * @param last_dump If true, indicates the last dump before process termination. */ -void DumpDeviceProfileResults(Device device, const CoreRangeSet &worker_cores, bool last_dump = false); - +void DumpDeviceProfileResults(DeviceHandle device, const CoreRangeSet &worker_cores, bool last_dump = false); /** * @brief Retrieves the architecture of the device. @@ -87,7 +101,7 @@ void DumpDeviceProfileResults(Device device, const CoreRangeSet &worker_cores, b * @param device The device to query. * @return ARCH representing the device architecture. */ -ARCH GetArch(Device device); +ARCH GetArch(DeviceHandle device); /** * @brief Retrieves the ID of the device. @@ -95,7 +109,7 @@ ARCH GetArch(Device device); * @param device The device to query. * @return Chip ID of the device. */ -chip_id_t GetId(Device device); +chip_id_t GetId(DeviceHandle device); /** * @brief Retrieves the number of DRAM channels on the device. @@ -103,7 +117,7 @@ chip_id_t GetId(Device device); * @param device The device to query. * @return Number of DRAM channels. */ -int GetNumDramChannels(Device device); +int GetNumDramChannels(DeviceHandle device); /** * @brief Retrieves the available L1 size per worker core on the device. @@ -111,7 +125,7 @@ int GetNumDramChannels(Device device); * @param device The device to query. * @return L1 size per core in bytes. */ -uint32_t GetL1SizePerCore(Device device); +std::uint32_t GetL1SizePerCore(DeviceHandle device); /** * @brief Computes the storage grid size for the device. @@ -119,7 +133,7 @@ uint32_t GetL1SizePerCore(Device device); * @param device The device to query. * @return CoreCoord representing the storage grid size. */ -CoreCoord GetComputeWithStorageGridSize(Device device); +CoreCoord GetComputeWithStorageGridSize(DeviceHandle device); /** * @brief Retrieves the DRAM grid size for the device. @@ -127,49 +141,21 @@ CoreCoord GetComputeWithStorageGridSize(Device device); * @param device The device to query. * @return CoreCoord representing the DRAM grid size. */ -CoreCoord GetDramGridSize(Device device); - -/** - * @brief Converts a logical core coordinate to a physical core coordinate. - * - * @param device The device to query. - * @param logical_core The logical core coordinate. - * @param core_type The type of the core. - * @return CoreCoord representing the physical core coordinate. - */ -CoreCoord PhysicalCoreFromLogical(Device device, const CoreCoord &logical_core, const CoreType &core_type); - -/** - * @brief Retrieves the worker core coordinate corresponding to a logical core. - * - * @param device The device to query. - * @param logical_core The logical core coordinate. - * @return CoreCoord representing the worker core coordinate. - */ -CoreCoord WorkerCoreFromLogical(Device device, const CoreCoord &logical_core); - -/** - * @brief Retrieves the Ethernet core coordinate corresponding to a logical core. - * - * @param device The device to query. - * @param logical_core The logical core coordinate. - * @return CoreCoord representing the Ethernet core coordinate. - */ -CoreCoord EthernetCoreFromLogical(Device device, const CoreCoord &logical_core); +CoreCoord GetDramGridSize(DeviceHandle device); /** * @brief Enables the program cache on the device. * * @param device The device to modify. */ -void EnableProgramCache(Device device); +void EnableProgramCache(DeviceHandle device); /** * @brief Disables and clears the program cache on the device. * * @param device The device to modify. */ -void DisableAndClearProgramCache(Device device); +void DisableAndClearProgramCache(DeviceHandle device); /** * @brief Pushes a work function onto the device's work queue. @@ -178,23 +164,14 @@ void DisableAndClearProgramCache(Device device); * @param work The work function to execute. * @param blocking Indicates whether the operation should be blocking (default: false). */ -void PushWork(Device device, std::function &&work, bool blocking = false); - -/** - * @brief Pushes a shared work function onto the device's work queue. - * - * @param device The device to which the work will be pushed. - * @param work Shared pointer to the work function to execute. - * @param blocking Indicates whether the operation should be blocking (default: false). - */ -void PushWork(Device device, std::function work, bool blocking = false); +void PushWork(DeviceHandle device, std::function work, bool blocking = false); /** * @brief Synchronizes operations on the given device. * * @param device The device to synchronize. */ -void Synchronize(Device device); +void Synchronize(DeviceHandle device); /** * @brief Retrieves a list of Ethernet socket coordinates connected to a specific chip ID. @@ -203,7 +180,7 @@ void Synchronize(Device device); * @param connected_chip_id The connected chip ID. * @return Vector of CoreCoord representing Ethernet socket coordinates. */ -std::vector GetEthernetSockets(Device device, chip_id_t connected_chip_id); +std::vector GetEthernetSockets(DeviceHandle device, chip_id_t connected_chip_id); /** * @brief Returns the number of banks for a specific buffer type on the device. @@ -212,7 +189,7 @@ std::vector GetEthernetSockets(Device device, chip_id_t connected_chi * @param buffer_type The type of buffer. * @return Number of banks. */ -uint32_t GetNumBanks(Device device, const BufferType &buffer_type); +std::uint32_t GetNumBanks(DeviceHandle device, BufferType buffer_type); /** * @brief Computes the offset of a specific bank for a buffer type on the device. @@ -222,7 +199,7 @@ uint32_t GetNumBanks(Device device, const BufferType &buffer_type); * @param bank_id The ID of the bank. * @return Offset of the bank. */ -int32_t GetBankOffset(Device device, BufferType buffer_type, uint32_t bank_id); +std::int32_t GetBankOffset(DeviceHandle device, BufferType buffer_type, std::uint32_t bank_id); /** * @brief Retrieves bank IDs associated with a logical core for a given buffer type. @@ -230,10 +207,10 @@ int32_t GetBankOffset(Device device, BufferType buffer_type, uint32_t bank_id); * @param device The device to query. * @param buffer_type The type of buffer. * @param logical_core The logical core coordinate. - * @return Reference to a vector of bank IDs. + * @return span of const bank IDs. */ -const std::vector &BankIdsFromLogicalCore(Device device, BufferType buffer_type, const CoreCoord &logical_core); - +stl::Span BankIdsFromLogicalCore( + DeviceHandle device, BufferType buffer_type, CoreCoord logical_core); /** * @brief Retrieves the machine epsilon for the SFPU on the device. @@ -241,7 +218,7 @@ const std::vector &BankIdsFromLogicalCore(Device device, BufferType bu * @param device The device to query. * @return SFPU machine epsilon. */ -float GetSfpuEps(Device device); +float GetSfpuEps(DeviceHandle device); /** * @brief Retrieves the representation of NaN for the SFPU on the device. @@ -249,7 +226,7 @@ float GetSfpuEps(Device device); * @param device The device to query. * @return SFPU NaN value. */ -float GetSfpuNan(Device device); +float GetSfpuNan(DeviceHandle device); /** * @brief Retrieves the representation of infinity for the SFPU on the device. @@ -257,24 +234,7 @@ float GetSfpuNan(Device device); * @param device The device to query. * @return SFPU infinity value. */ -float GetSfpuInf(Device device); - -/** - * @brief Retrieves a command queue from the device for a given queue ID. - * - * @param device The device to query. - * @param cq_id The command queue ID. - * @return CommandQueue handle. - */ -CommandQueue GetCommandQueue(Device device, size_t cq_id); - -/** - * @brief Retrieves the default command queue for the given device. - * - * @param device The device to query. - * @return CommandQueue handle. - */ -CommandQueue GetDefaultCommandQueue(Device device); +float GetSfpuInf(DeviceHandle device); /** * @brief Retrieves the current worker mode of the device. @@ -282,7 +242,7 @@ CommandQueue GetDefaultCommandQueue(Device device); * @param device The device to query. * @return WorkExecutorMode representing the current worker mode. */ -WorkExecutorMode GetWorkerMode(Device device); +WorkExecutorMode GetWorkerMode(DeviceHandle device); /** * @brief Retrieves the number of entries in the program cache on the device. @@ -290,16 +250,7 @@ WorkExecutorMode GetWorkerMode(Device device); * @param device The device to query. * @return Number of program cache entries. */ -std::size_t GetNumProgramCacheEntries(Device device); - -/** - * @brief Checks if the current execution is in the main thread for the device. - * - * @param device The device to query. - * @return True if in the main thread; otherwise, false. - */ -bool InMainThread(Device device); - +std::size_t GetNumProgramCacheEntries(DeviceHandle device); -} // namespace v1 -} // namespace tt::tt_metal +} // namespace v1 +} // namespace tt::tt_metal diff --git a/tt_metal/include/tt_metal/event.hpp b/tt_metal/include/tt_metal/event.hpp index f73ac2a9ca3..a4200e2ff83 100644 --- a/tt_metal/include/tt_metal/event.hpp +++ b/tt_metal/include/tt_metal/event.hpp @@ -17,41 +17,48 @@ namespace v1 { * @brief Enqueues a command to record an event on the device. * * @param cq The command queue used to dispatch the command. - * @param event Shared pointer to the Event object to record. + * @return Handle to the recorded Event object. */ -void EnqueueRecordEvent(CommandQueue cq, const std::shared_ptr &event); +EventHandle EnqueueRecordEvent(CommandQueueHandle cq); /** * @brief Enqueues a command to wait for an event to complete on the device. * * @param cq The command queue that will wait for the event. - * @param event Shared pointer to the Event object to wait on. + * @param event Handle to the Event object to wait on. */ -void EnqueueWaitForEvent(CommandQueue cq, const std::shared_ptr &event); +void EnqueueWaitForEvent(CommandQueueHandle cq, EventHandle event); /** * @brief Blocks the host until the specified event has completed on the device. * - * @param event Shared pointer to the Event object to synchronize. + * @param event Handle to the Event object to synchronize. */ -void EventSynchronize(const std::shared_ptr &event); +void EventSynchronize(EventHandle event); /** * @brief Queries the completion status of an event on the device. * - * @param event Shared pointer to the Event object to query. + * @param event Handle to the Event object to query. * @return True if the event is completed; otherwise, false. */ -bool EventQuery(const std::shared_ptr &event); +bool EventQuery(EventHandle event); /** * @brief Synchronizes the device with the host by waiting for all operations to complete. * - * @param device The device to synchronize. - * @param cq_id Optional command queue ID to synchronize. If not provided, all queues are synchronized. + * @param device device to synchronize. */ -void Synchronize(Device device, const std::optional cq_id = std::nullopt); +void DeviceSynchronize(DeviceHandle device); + + +/** + * @brief Synchronizes the command queue with the host by waiting for all operations to complete. + * + * @param cq command queue to synchronize. + */ +void CommandQueueSynchronize(CommandQueueHandle cq); } // namespace v1 diff --git a/tt_metal/include/tt_metal/kernel.hpp b/tt_metal/include/tt_metal/kernel.hpp index 332e1cd6c13..4f6417ff70c 100644 --- a/tt_metal/include/tt_metal/kernel.hpp +++ b/tt_metal/include/tt_metal/kernel.hpp @@ -5,13 +5,12 @@ #pragma once #include "types.hpp" -#include "tt_metal/impl/kernels/kernel_types.hpp" //================================================== // KERNEL EXECUTION //================================================== -namespace tt::tt_metal{ +namespace tt::tt_metal { namespace v1 { /** @@ -23,44 +22,26 @@ namespace v1 { * @param runtime_args The runtime arguments to be set. */ void SetRuntimeArgs( - const Program program, - KernelHandle kernel, - const CoreRangeSet &core_spec, - const RuntimeArgs &runtime_args); - -/** - * @brief Sets multiple runtime arguments of a kernel at once. - * - * @param program The program containing the kernel. - * @param kernel KernelHandle representing the kernel ID. - * @param core_spec Vector of core coordinates where the runtime arguments will be set. - * @param runtime_args The runtime arguments to be set. - */ -void SetRuntimeArgs( - const Program program, - KernelHandle kernel, - const std::vector &core_spec, - const RuntimeArgs &runtime_args); + ProgramHandle &program, KernelHandle kernel, const CoreRangeSet &core_spec, RuntimeArgs runtime_args); /** * @brief Sets common runtime arguments for a kernel, shared by all cores. * * @param program The program containing the kernel. - * @param kernel_id KernelHandle representing the kernel ID. + * @param kernel KernelHandle representing the kernel ID. * @param runtime_args The runtime arguments to be set. */ -void SetCommonRuntimeArgs(const Program program, KernelHandle kernel_id, const RuntimeArgs &runtime_args); +void SetCommonRuntimeArgs(ProgramHandle &program, KernelHandle kernel, RuntimeArgs runtime_args); /** * @brief Gets the runtime arguments for a kernel. * * @param program The program containing the kernel. - * @param kernel_id KernelHandle representing the kernel ID. + * @param kernel KernelHandle representing the kernel ID. * @param logical_core The logical core coordinate. - * @return Reference to RuntimeArgsData. + * @return Span of runtime arguments. */ -RuntimeArgsData &GetRuntimeArgs(const Program program, KernelHandle kernel_id, const CoreCoord &logical_core); - +RuntimeArgs GetRuntimeArgs(ProgramHandle &program, KernelHandle kernel, CoreCoord logical_core); -} // namespace v1 -} // namespace tt::tt_metal +} // namespace v1 +} // namespace tt::tt_metal diff --git a/tt_metal/include/tt_metal/trace.hpp b/tt_metal/include/tt_metal/trace.hpp index 5131d8a978c..fb84ee296e1 100644 --- a/tt_metal/include/tt_metal/trace.hpp +++ b/tt_metal/include/tt_metal/trace.hpp @@ -13,50 +13,51 @@ namespace v1 { // TRACE OPERATIONS //================================================== +/** + * @brief Obtains the associated command queue from a given trace handle. + * + * @param trace The trace handle returned by BeginTraceCapture. + * @return Command queue handle. + */ +CommandQueueHandle GetCommandQueue(TraceHandle trace); + /** * @brief Begins capture on a trace. Captured commands will have their execution delayed until the trace is replayed. * - * @param device The device being traced. * @param cq The command queue associated with the trace. - * @return Trace ID. + * @return Trace handle. */ -uint32_t BeginTraceCapture(Device device, CommandQueue cq); +TraceHandle BeginTraceCapture(CommandQueueHandle cq); /** * @brief Ends capture on a trace. The trace can be replayed on the same device command queue. * - * @param device The device being traced. - * @param cq The command queue associated with the trace. - * @param tid The trace ID returned by BeginTraceCapture. + * @param trace The trace handle returned by BeginTraceCapture. */ -void EndTraceCapture(Device device, CommandQueue cq, uint32_t tid); +void EndTraceCapture(TraceHandle trace); /** * @brief Replays a captured trace on the device. * - * @param device The device holding the trace. - * @param cq The command queue associated with the trace. - * @param trace The trace ID to replay. + * @param trace The trace to replay. * @param blocking Indicates whether the operation is blocking. */ -void ReplayTrace(Device device, CommandQueue cq, Trace trace, bool blocking); +void ReplayTrace(TraceHandle trace, bool blocking); /** * @brief Releases a previously captured trace, deallocating associated resources. * - * @param device The device holding the trace. * @param trace The trace to release. */ -void ReleaseTrace(Device device, Trace trace); +void ReleaseTrace(TraceHandle trace); /** * @brief Enqueues a trace for execution on the device. * - * @param cq The command queue used to dispatch the trace. * @param trace The Trace to enqueue. * @param blocking Indicates whether the operation is blocking. */ -void EnqueueTrace(CommandQueue cq, Trace trace, bool blocking); +void EnqueueTrace(TraceHandle trace, bool blocking); } // namespace v1 diff --git a/tt_metal/include/tt_metal/types.hpp b/tt_metal/include/tt_metal/types.hpp index 2e6e78a5878..4252f764cbb 100644 --- a/tt_metal/include/tt_metal/types.hpp +++ b/tt_metal/include/tt_metal/types.hpp @@ -4,28 +4,49 @@ #pragma once -#include "device/tt_cluster_descriptor_types.h" -#include "hostdevcommon/common_values.hpp" #include "tt_metal/host_api.hpp" #include "tt_metal/impl/device/device_handle.hpp" -#include "tt_metal/impl/dispatch/dispatch_core_manager.hpp" namespace tt::tt_metal { namespace v1 { using ProgramHandle = v0::Program; class DeviceHandle; -class CommandQueue; -class Trace; + +class CommandQueueHandle { + private: + explicit constexpr CommandQueueHandle(DeviceHandle device, std::uint8_t id = 0) : device{device}, id{id} {} + + DeviceHandle device; + std::uint8_t id; + + friend CommandQueueHandle GetCommandQueue(DeviceHandle device, std::uint8_t id); + friend DeviceHandle GetDevice(CommandQueueHandle cq); + friend std::uint8_t GetId(CommandQueueHandle cq); +}; + +class TraceHandle { + public: + explicit constexpr operator std::uint32_t() const noexcept { return id; } + + private: + explicit constexpr TraceHandle(CommandQueueHandle cq, std::uint32_t id) noexcept : cq{cq}, id{id} {} + + CommandQueueHandle cq; + std::uint32_t id; + + friend TraceHandle BeginTraceCapture(CommandQueueHandle cq); + friend CommandQueueHandle GetCommandQueue(TraceHandle trace); +}; class KernelHandle { public: - explicit constexpr KernelHandle(tt_metal::KernelHandle kernel_id) noexcept : kernel_id{kernel_id} {} + explicit constexpr KernelHandle(tt_metal::KernelHandle id) noexcept : id{id} {} - explicit constexpr operator tt_metal::KernelHandle() const noexcept { return kernel_id; } + explicit constexpr operator tt_metal::KernelHandle() const noexcept { return id; } private: - tt_metal::KernelHandle kernel_id; + tt_metal::KernelHandle id; }; class CircularBufferHandle { @@ -53,11 +74,23 @@ class BufferHandle { std::shared_ptr buffer_ptr; }; -// Not likely going to be opaque, but pending review of -// completion of the prototype of the runtime args. -class Event; -class RuntimeArgs; -class RuntimeArgsData; +class EventHandle { + public: + explicit EventHandle(); + explicit EventHandle(const std::shared_ptr &event_ptr) noexcept : event_ptr{event_ptr} {} + explicit EventHandle(std::shared_ptr &&event_ptr) noexcept : + event_ptr{static_cast &&>(event_ptr)} {} + + explicit operator const std::shared_ptr &() const noexcept { return event_ptr; } + + v0::Event &operator*() const noexcept { return *event_ptr.get(); } + v0::Event *operator->() const noexcept { return event_ptr.get(); } + + private: + std::shared_ptr event_ptr; +}; + +using RuntimeArgs = tt::stl::Span; } // namespace v1 } // namespace tt::tt_metal From c1f3bec9ce9a2319c3b3c85476efc505efa296fe Mon Sep 17 00:00:00 2001 From: Dimitri Gnidash <119051828+dimitri-tenstorrent@users.noreply.github.com> Date: Fri, 22 Nov 2024 13:01:33 -0500 Subject: [PATCH 03/37] #12496: Add workflow wrapper for pre-release testing of PR#15013 for Release Images (#15371) ### Ticket https://github.com/tenstorrent/tt-metal/issues/12496 https://github.com/tenstorrent/tt-metal/issues/12495 (describes agreed upon naming scheme) ### Problem description This is an empty workflow that allows for additional testing before the main set of changes is merged from https://github.com/tenstorrent/tt-metal/pull/15013 ### What's changed Added a new NO-OP workflow ### Checklist - [x] Post commit CI passes - [ ] Blackhole Post commit (if applicable) - [ ] Model regression CI testing passes (if applicable) - [ ] Device performance regression CI testing passes (if applicable) - [ ] New/Existing tests provide coverage for changes --- .github/workflows/publish-release-image-wrapper.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 .github/workflows/publish-release-image-wrapper.yaml diff --git a/.github/workflows/publish-release-image-wrapper.yaml b/.github/workflows/publish-release-image-wrapper.yaml new file mode 100644 index 00000000000..d6b0e20fcf4 --- /dev/null +++ b/.github/workflows/publish-release-image-wrapper.yaml @@ -0,0 +1,12 @@ +name: "Create and Publish Release Docker Image" + +on: + workflow_call: + workflow_dispatch: + +jobs: + to_be_filled_out: + steps: + - name: This workflow will be filled out in https://github.com/tenstorrent/tt-metal/pull/15013 + run: | + echo "NOOP" From 05aed6d45d45a7bfdf985948187a37382537ff22 Mon Sep 17 00:00:00 2001 From: Michael Chiou <156848643+ttmchiou@users.noreply.github.com> Date: Fri, 22 Nov 2024 10:16:19 -0800 Subject: [PATCH 04/37] Revert "UMD create_mock_cluster (#15301)" This reverts commit 91b2a4533a369b8a3da8ed1eb917db5cb9e68e68. --- tt_metal/llrt/tt_cluster.cpp | 12 ++++++++++-- tt_metal/third_party/umd | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/tt_metal/llrt/tt_cluster.cpp b/tt_metal/llrt/tt_cluster.cpp index c29d8d1d5b8..114ac7353b7 100644 --- a/tt_metal/llrt/tt_cluster.cpp +++ b/tt_metal/llrt/tt_cluster.cpp @@ -128,8 +128,16 @@ void Cluster::generate_cluster_descriptor() { // Cluster descriptor yaml not available for Blackhole bring up if (this->target_type_ == TargetDevice::Simulator) { - // Passing simulator reported physical devices as logical devices. - this->cluster_desc_ = tt_ClusterDescriptor::create_mock_cluster(tt_SimulationDevice::detect_available_device_ids(), this->arch_); + // Cannot use tt::umd::Cluster::detect_available_device_ids because that returns physical device IDs + std::vector physical_mmio_device_ids; + std::set logical_mmio_device_ids; + physical_mmio_device_ids = tt_SimulationDevice::detect_available_device_ids(); + for (chip_id_t logical_mmio_device_id = 0; logical_mmio_device_id < physical_mmio_device_ids.size(); + logical_mmio_device_id++) { + logical_mmio_device_ids.insert(logical_mmio_device_id); + } + this->cluster_desc_ = + tt_ClusterDescriptor::create_for_grayskull_cluster(logical_mmio_device_ids, physical_mmio_device_ids); } else { this->cluster_desc_ = tt_ClusterDescriptor::create_from_yaml(this->cluster_desc_path_); for (const auto &chip_id : this->cluster_desc_->get_all_chips()) { diff --git a/tt_metal/third_party/umd b/tt_metal/third_party/umd index e9dc0d12fc2..8985708a924 160000 --- a/tt_metal/third_party/umd +++ b/tt_metal/third_party/umd @@ -1 +1 @@ -Subproject commit e9dc0d12fc24aba9196b05e6ba142be475447694 +Subproject commit 8985708a924ee48f202f79f31e05fc15a25a7a44 From a87c91273bb71a09b9f35d25fb39845ff8dd6033 Mon Sep 17 00:00:00 2001 From: Yu Gao <145494740+yugaoTT@users.noreply.github.com> Date: Fri, 22 Nov 2024 13:24:27 -0500 Subject: [PATCH 05/37] Fix the pytorch 2.0 failed cases (#15367) ### Ticket https://github.com/tenstorrent/tt-metal/issues/15366 ### Problem description previous calculation for out subblkock size wrong, need to use outblock size to get the subblock size. ### Checklist - [x] Post commit CI failure unrelated --- tests/ttnn/unit_tests/operations/test_matmul.py | 12 ++++++++++++ ttnn/cpp/ttnn/operations/matmul/device/matmul_op.cpp | 8 ++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/tests/ttnn/unit_tests/operations/test_matmul.py b/tests/ttnn/unit_tests/operations/test_matmul.py index b85e5319e23..6f56e7fb6be 100644 --- a/tests/ttnn/unit_tests/operations/test_matmul.py +++ b/tests/ttnn/unit_tests/operations/test_matmul.py @@ -81,6 +81,18 @@ def test_tiny_tiles(device, n, c, h, w, tile_h, tile_w): assert_with_pcc(torch_input_tensor, output_tensor, 1) +@pytest.mark.parametrize("m, k, n", [(784, 192, 576), (576, 192, 784), (486, 792, 352), (966, 123, 561)]) +def test_pytorch_2_0_failed_cases(device, m, k, n): + x = torch.ones((m, k), dtype=torch.float32) + y = torch.ones((k, n), dtype=torch.float32) + x_tt = ttnn.from_torch(x, dtype=ttnn.bfloat16, layout=ttnn.TILE_LAYOUT, device=device) + y_tt = ttnn.from_torch(y, dtype=ttnn.bfloat16, layout=ttnn.TILE_LAYOUT, device=device) + z_tt = ttnn.matmul(x_tt, y_tt) + z = ttnn.to_torch(z_tt) + z_t = torch.matmul(x, y) + assert_with_pcc(z_t, z) + + @run_for_wormhole_b0() @pytest.mark.parametrize("b", [2]) @pytest.mark.parametrize("h", [3]) diff --git a/ttnn/cpp/ttnn/operations/matmul/device/matmul_op.cpp b/ttnn/cpp/ttnn/operations/matmul/device/matmul_op.cpp index 39c2a4ce69c..19e443d2fa7 100644 --- a/ttnn/cpp/ttnn/operations/matmul/device/matmul_op.cpp +++ b/ttnn/cpp/ttnn/operations/matmul/device/matmul_op.cpp @@ -439,9 +439,9 @@ inline MatmulProgramConfig create_simple_matmul_program_config( && mem_config.buffer_type == BufferType::DRAM && num_cores_x == 8 && num_cores_y == 8) { - in0_block_w = !transpose_mcast ? Kt / num_cores_x : Kt / num_cores_y; - per_core_M = !transpose_mcast ? Mt / num_cores_y : Mt / num_cores_x; - per_core_N = !transpose_mcast ? Nt / num_cores_x : Nt / num_cores_y; + in0_block_w = !transpose_mcast ? (Kt % num_cores_x == 0 ? Kt / num_cores_x : 1) : (Kt % num_cores_x == 0 ? Kt / num_cores_y : 1); + per_core_M = !transpose_mcast ? tt::div_up(Mt, num_cores_y) : tt::div_up(Mt, num_cores_x); + per_core_N = !transpose_mcast ? tt::div_up(Nt, num_cores_x) : tt::div_up(Nt, num_cores_y); auto mutlti_dim_per_core_factor = get_multi_dim_per_core_factor(input_tensor_a, input_tensor_b, per_core_M, per_core_N, in0_block_w, tt_metal::detail::TileSize(tt::DataFormat::Float16_b)); out_block_h = mutlti_dim_per_core_factor[0]; @@ -449,7 +449,7 @@ inline MatmulProgramConfig create_simple_matmul_program_config( in0_block_w = mutlti_dim_per_core_factor[2]; auto subblock_hw = bmm_op_utils::get_matmul_subblock_params( - per_core_M, per_core_N, false, false, false); + out_block_h, out_block_w, false, false, false); out_subblock_h = std::get<0>(subblock_hw); out_subblock_w = std::get<1>(subblock_hw); } From 3dead52a675d6d0db7d62d4f628bff5de25c41b0 Mon Sep 17 00:00:00 2001 From: Brian Beggs Date: Fri, 22 Nov 2024 10:40:38 -0800 Subject: [PATCH 06/37] Delete docs/source/common/images/MfB-Fig12.png (#15376) ### Ticket N/A ### Problem description Image updated. ### What's changed Better image uploaded. ### Checklist - [ ] Post commit CI passes - [ ] Blackhole Post commit (if applicable) - [ ] Model regression CI testing passes (if applicable) - [ ] Device performance regression CI testing passes (if applicable) - [ ] New/Existing tests provide coverage for changes --- docs/source/common/images/MfB-Fig12.png | Bin 27944 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 docs/source/common/images/MfB-Fig12.png diff --git a/docs/source/common/images/MfB-Fig12.png b/docs/source/common/images/MfB-Fig12.png deleted file mode 100644 index 8b3c6dd30493315127061f49bf7a4adb1a704122..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27944 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
q51a4zjld>_O{zzGum^K}!_N0wpG#~|pR zlUbqm0M&&JBs%WBa4c^CuamT7ZOX7akrUe|hMV!RJ}(sZ8L;2lEG#TtoYpu5d*ay& z_wSXg)px|u6ToubXcK7L`Eh4Eb`bNqJzK21o&!s047uo=k4mK|R)j}ukxG-4@_KnY zqxeeWQKBHT;GT%r{8u7|BulpJD;MNP!euAq;Nb8X)Sl1ub-%j9)3EmimGr|yR#Ug? z6A$0hTUCEA?$+(hH||%(}ZG3_;Sqwa_#zRusIF9HaX<(8oU0x+W_czv6v9nCdb@*1zN?n=xSy%TmK zbaOujL{rT(Z#h}#M;ozM^`FB`2a~k-~qYr9jcM>KrXZSYVnw>+URzlthh@(l7 zzd}AbIXfGiJC}GQ?C0s0SnibmN@pBNoTCrR9OF+N2r4Hho5VE@Xz#7(niGow$Z9Ho zGF6KaLb5-kyO^>)#iF?3`!cqN)q{Uj#O(-Ez|5BiQXb75y&vuY`}9g+VQ3ZjYC-^Q zB!0A)tm!9kp^lOP*UlAA#%Xi+{aU8cI)#(~qIijJSv6iKXL;K2sPPk@G2^y|3+DCD z(6b!YPk)cG!**$Je5iP&1qedFr_Wpf0auREy}N3d4RwInFoL#O&=n5Sf<&t{m=w+k zWxucY((XBi`1N~0)%QGH`0mq85Jz*-sQD$a1GU|AY*=MXiDha1$8#TM6La9YynGG6 z0@}9Dzch`nv$1!RN4>yL2+9#!?R>#Ke0x4CyVBdV;q=>M^Oa>56#~#bz*A?V)WoW>@2x*^#awEw-%(XH{w=ZvPy6{DXi3nuL=u&cM9X zS{S2*b(2W>nsGc=e}2D|cG5ZNs5Rl0!-=NX9DQ_1Xy&=e)l*qv6xCT(RrS*IbFc=) z52yie{(X$fY<8i;PN^SYpj$HoM)r1}d?KPky+g!OOuc-VL%fbM;~GB$9exK;)IhKH z8aak1UEbxOSHt4{+Om>#<4jfZ+-?bUdwV;dkd$iJ##;PnSIRFLdq4A<2^M!~5ReRT z8aI=;a9&3zcAKDlq4I5SuW%MvOV34q{#Kr){oT70tEyF`GWM^hy<~NM>h5-bckUf=C%N?f_=A@%lWJwzSc) zCgge!V~VXS@oD9qVU8};nd#|wS?VE^v*k^S5!P@7^P!L^e^Eunf9~PjP_5Y#ZPY7x ziZbM-xa|n>_WVR1UqzVNhKUM=x9}LF?Pfx895!)fwv8mGOo)s{Gcn`%I`za6q3?bO zuzjDLDM}iIE$Ue#N7Q6oGCLj)`LV%UrV>T);jZE-G9qBq!+@;Op2D1Q8ig>TkWCi> zgxJL*;roMCC?}2Vc$h>xdO{HymcBEAP;=YU6@JuHPTq>wQmqTfhrDtGhp>UK-w|O7 zE0$KUak$ACDTHez&=~^5w^8i(8eqbH+=4c88czDZ8phAEizUMdl)_eR1Tms9762${ zgP)h3J|JB1Mh?RNh~0wkyX6%GfXWN+jIqq)K`gY49yEQ*>3Qn{4=TVtc!z*fEcEC; zn_Ks33Y`&98O*dn5&_jP!|yfQ^EE|)rICq_+Jcl~CvXrlqUjN5MNH&D_c4WWKF<56ddxC;n8btp+Crc;`!3EHjmz+L8N%kv)W6<%OXE1GEs^656)Ew(2oPbf$N~q; z1f3$2(;taKin|8pYQnh<$1CXv)0j$3Z$UnU-xhS=cllI!a~f<&HQ%Lcdy%@wz(MJ{ ztbAJo1xpe~=bDHi#LWYW&*0Z-W~N9nSV!KcoF|A`+UW4$sEm<%CNF3%XKxXLlL-F< zrbtqdB>TW>I;l(f{)h*>0M?G{O5KI8VgfK#cWl7`VgQE>%ObDWnQMsO{TA&3H| z2rZb}Alfo}8#_NRm8J0}L$OG0?FIQ#MHL^N6|n?uU1SXsMylc`ywBI8_mmErxWbC_ zb=q$r01vO^Q+O!}ltA7H0%%1##J4dXIn5>b*BA~Tp$L|pu%zra*^&rh*w=vReDer} zVuk@+CVyNoM=BgPpg}qwpCbz!u=ZnO4>RLJn-wCSvAIJ=?cUs+dw;bD&b^qmEFBm~vD@q0;hhO3EQ1fKp`bpX;s6Pvws6i{?s8OS_wz>XbMDL1K|< z{<(xi5BmV>fVl2$;ne9)oWc69#n)S9#eg zjW!bC7u9gsI76}}Zu&h!_D>IL1O|Ker>Dx!~DETboA!4u67(!Kp zux-zLJ}2JnDzjIk$1~<-b}Ey5QPsRWD^SaJBx)-+r}|$1d+F&?UQO%O<|URgbDVMi zw4H1S&9eS?u8W@7B=~&R3Bhd>K6Meu2^HGK0QSC(vA!yo6uS^AaU|il>%aE&LL;R1 zPo=hW_RgVPQDGCR&}N6*lW-u2XSFmDDM+=39jY4oyqp=izHEQ!v8D(Vy-vmZ7EtOh zsLErfJJPb!c_d1~aR(SSPhZg6+*o%SsSlcd1^pgGq2_Y^^8}>yS0+n8^>ieI8@tC#@G2O?w$(WT`e&^|vmnX4u%q;=usGq6oH+QLVbZE$~b|O)_ zK4@T-Br=#?(SLoe#*nGZx6s`UKlB?mfo*F=olb4bma3`D+Z|*($rcUM* z8YsMl%fO*s!BC*J#wE*xP*zb2wF_r#sxaf~yIq|BMt*fBpQHY10SQ%?enLK$I$#0t zCDlvdJ#?;UgM!E_4gt{BApX5T!3*-=sjsiw>#(nTZr>;ZTjAf4R_|sZx(5vU5=}AVt zMvQU3+F#*9uJfBc3}F5QCzM4uom%WM+YuLUgNIfm*76TYsdDWPT*WFWncQdrhhm24rPp;8X6|JtIsxkdGf`HU-YdYPM5 z91j>Mujc_YS)wcXE}Vbd3^l_k*nTD&r|6O1pdf}`Fpj0p^;hc3Lb*rKk1ky&sD>J` zSl5BSi>axpT|UkhqIqhIBKHyCMWlhYCzL;cSlB|!qIgoM@^cm-$`Frpw-BB>QjUT6 z;wz#PUryxzLVWeswgxZFQ5L0UhwEyNI@I@tkfBokFujUaBzN;?EG z4bE#X?)_W7YlD?lIQWYwUvo({;3L`$-!N)kAhbpBoGMo z%U^;9+dZJ=T6eDQc3S#y7vbwEAI0pyF53k%=hNtWnr~@#zw`JYl=e)-=vx$<-}yI`mq-Ht1f>&d z+%m5L^*gOXP4k~hwMt+A9&Xg4YF{C8jWkAu)<4G!hz~Nh#*O3Ncj0|2T#n&wLCx=< z;#)k)?;A;>W-YByT@`%hvHFK{Te@{6N)Qo1+gtN5-mB~X$9w%Mja0PnH`lBgt_!$P z_Os{)3d4)3$y5tC*ATqeaVfAFuW7n29XsIs^;4Lb+Ujd)w}277RBoY zvhF6}h$@>Smp-npj&6QqO)DxYA^-(^O*(gg@O|Gkz#wBaq6&=ZR9^4%**&OgZz=9F ztOJ2fI8Y>SnG775ECl8Yp37|R&x4)eV}sj9W+aN9^?C<%tN5WqE!Rj}eKuy+S6Nxz zf5~!Jt>Km)){RASbsWjuoC6cL(Js0Qw+5cT?c7%xH*}kK&CiqATzhh~xoA~o(*yYi zyJ-)FY5-0Sxt@1L;LNeVczm8M>fU4FlarGV^_RGCY)6%ptc0(9Ka+O+k64K>G-e_o*QyfYSFgH*MBv<_KxLP|y@pE=OI@x4m)&FOT`yJhvJb zufz3WO}+1j==C>c!mbVztIptV@x57DQl8Ct8d4_6_!jiF-_4{Lsjp~ocY~0q>&V$!+*M*F7X;Hoh0i}e=&IZo6yr!g5UeK_pGT;CGM=CaILF8&1skeh zpJ`t6(#~)3lXF(kn;|s-Q!8&zZ(Lehd8-a_;PSvdL1Y~0NGCF_wvm$|i?MC-OIM4q z&Kfzp?ZCB_8I>F2XxoNh;$Gq61Em%v_veP|lqQz_7ESE6dpw^XbOuY@ap}UAYM|gl zeBa&@Rv)l!ZEiFRBNpK9xA17o7(>U_)TvVUVw&o;pA~B>AHqHjCsP3};FpJio$Ocv z_371k4xjxt-Yf*m3mCYYj(CyJ4#A7WFBFi=><4GL@$$D%&BxyqQnLip&wnsq8vQkI zbD*T%6EdZDC9(ov3ZDaR3X0P6VRMbtVaX2hVU(ueW~sNQaCEV}-nu8;=n+oYCx?U2 z&#~sm4=m;5<0y&;{&DYJaf6Mp@#U}^`zm7M0-py)#rgyE;^p41@bHJ+boS^hY>QSU z6>kFwt4f#h6cK@jC;KaLv{|CkNTB97$R;LdU1HrqiQHoFKz4E0?uz9%u+P-6vL~oy zi;s9NA$gZ>t&!ka8DCtPtE%5u^Ge5za2Ywd^Vq^KYby)6p~g-5B}rc`hhVW?yhiO- zefTN4ch_SY;${=*(ODl=lY-FIT{Fl;1yWa}s!^gC5A4~KcFG?Zyd#%({~S?01r_b|dF zUc;GFB%?V00f95?Go7#5H@`%3^Bp!!K4ONCwj+BPWu3B?t)1NIhp`ej=1J0aI?x3976Z6jQwiM~8KVII37zc2RHY_1^ss}j$CW$4$_ zb9}VOuJ&rZ!-o)*2znF0_V_AOqS20j38`$r{wo%c3-_a(q2z(O?ZtvMBf?~6;e=RM znkmkJT`V1JV-Ash3gPlJG@`?AHKABg^ngA4O->HMpR2Qbs4a7@dExk-rJ4c_|~d_oNPzb(NI!7SJK7-Q(B!4wfq z57^_cWb?A~8$rO1F&>IRM$*>wfIVMv^sI;uILkfELHik_HKqttx+Yl79TGHLfRjnR zf0TwKTCyiW6!DtR`YiA4V49A$6%j^R;p#F>BXI5&H@jF8sB@x`3@$(6S*Up<5z#eR=YJN7Ft2(U~5t+Q*lj>EsOY<5sJwtip^n~)%V lL=HjX{sm|B4o7S1`r5`?WoOZm{{TL2j@ Date: Fri, 22 Nov 2024 10:43:24 -0800 Subject: [PATCH 07/37] Rename MFB-Fig11.png to MfB-Fig11.png (#15377) File Name Change ### Ticket Link to Github Issue ### Problem description Provide context for the problem. ### What's changed Describe the approach used to solve the problem. Summarize the changes made and its impact. ### Checklist - [ ] Post commit CI passes - [ ] Blackhole Post commit (if applicable) - [ ] Model regression CI testing passes (if applicable) - [ ] Device performance regression CI testing passes (if applicable) - [ ] New/Existing tests provide coverage for changes --- .../common/images/{MFB-Fig11.png => MfB-Fig11.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/source/common/images/{MFB-Fig11.png => MfB-Fig11.png} (100%) diff --git a/docs/source/common/images/MFB-Fig11.png b/docs/source/common/images/MfB-Fig11.png similarity index 100% rename from docs/source/common/images/MFB-Fig11.png rename to docs/source/common/images/MfB-Fig11.png From ec651f0d73fbc20f53e4203f2d95f2c7b2033be6 Mon Sep 17 00:00:00 2001 From: Brian Beggs Date: Fri, 22 Nov 2024 11:10:48 -0800 Subject: [PATCH 08/37] Rename MFB-Fig12.png to MfB-Fig12.png (#15378) File Name Change ### Ticket Link to Github Issue ### Problem description Provide context for the problem. ### What's changed Describe the approach used to solve the problem. Summarize the changes made and its impact. ### Checklist - [ ] Post commit CI passes - [ ] Blackhole Post commit (if applicable) - [ ] Model regression CI testing passes (if applicable) - [ ] Device performance regression CI testing passes (if applicable) - [ ] New/Existing tests provide coverage for changes --- .../common/images/{MFB-Fig12.png => MfB-Fig12.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/source/common/images/{MFB-Fig12.png => MfB-Fig12.png} (100%) diff --git a/docs/source/common/images/MFB-Fig12.png b/docs/source/common/images/MfB-Fig12.png similarity index 100% rename from docs/source/common/images/MFB-Fig12.png rename to docs/source/common/images/MfB-Fig12.png From 415ee57c0c886cb10197de0fc02a65ea396e9b89 Mon Sep 17 00:00:00 2001 From: Brian Beggs Date: Fri, 22 Nov 2024 11:27:13 -0800 Subject: [PATCH 09/37] Rename MFB-Fig2.png to MfB-Fig2.png (#15380) File Name Change ### Ticket Link to Github Issue ### Problem description Provide context for the problem. ### What's changed Describe the approach used to solve the problem. Summarize the changes made and its impact. ### Checklist - [ ] Post commit CI passes - [ ] Blackhole Post commit (if applicable) - [ ] Model regression CI testing passes (if applicable) - [ ] Device performance regression CI testing passes (if applicable) - [ ] New/Existing tests provide coverage for changes --- .../common/images/{MFB-Fig2.png => MfB-Fig2.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/source/common/images/{MFB-Fig2.png => MfB-Fig2.png} (100%) diff --git a/docs/source/common/images/MFB-Fig2.png b/docs/source/common/images/MfB-Fig2.png similarity index 100% rename from docs/source/common/images/MFB-Fig2.png rename to docs/source/common/images/MfB-Fig2.png From 65b9d32b8d9b42e62a4a235bed998b42eb27ac82 Mon Sep 17 00:00:00 2001 From: Joseph Chu <122298491+cfjchu@users.noreply.github.com> Date: Fri, 22 Nov 2024 11:31:18 -0800 Subject: [PATCH 10/37] #0: Update CODEOWNERS for ttnn/distributed and metal/distributed (#15382) ### Ticket None ### Problem description CODEOWNERS require updates to loop in @omilyutin-tt ### What's changed Updated relevant CODEOWNERS list ### Checklist - [ ] Post commit CI passes - [ ] Blackhole Post commit (if applicable) - [ ] Model regression CI testing passes (if applicable) - [ ] Device performance regression CI testing passes (if applicable) - [ ] New/Existing tests provide coverage for changes Co-authored-by: Artem Yerofieiev <169092593+ayerofieiev-tt@users.noreply.github.com> --- CODEOWNERS | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CODEOWNERS b/CODEOWNERS index 557ef649ffe..978c748f9d3 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -53,7 +53,7 @@ tests/scripts/tgg/ @afuller-TT @ttmchiou tt_metal/ @abhullar-tt @pgkeller @aliuTT @tt-aho @tt-dma @tt-asaigal @ubcheema tt_metal/host_api.hpp @abhullar-tt @pgkeller @aliuTT @tt-aho @tt-dma @tt-asaigal @davorchap tt_metal/impl/device/ @abhullar-tt @pgkeller @aliuTT @tt-aho @tt-dma @tt-asaigal @ubcheema @davorchap @cfjchu -tt_metal/distributed/ @cfjchu @aliuTT @tt-asaigal +tt_metal/distributed/ @cfjchu @aliuTT @tt-asaigal @omilyutin-tt tt_metal/**/requirements*.txt @tt-rkim @TT-billteng @ttmchiou # metal - dispatch @@ -125,9 +125,9 @@ tests/sweep_framework/sweeps/conv2d/ @nkpatel-tt @mywoodstock @shwetankTT @sank tests/sweep_framework/sweeps/data_movement/ @sjameelTT @ntarafdar @jaykru-tt @yugi957 # TTNN Distributed -ttnn/cpp/ttnn/distributed/ @cfjchu @ayerofieiev-tt @dmakoviichuk-tt -ttnn/ttnn/distributed/ @cfjchu @ayerofieiev-tt @dmakoviichuk-tt -tests/ttnn/distributed/ @cfjchu @ayerofieiev-tt @dmakoviichuk-tt +ttnn/cpp/ttnn/distributed/ @cfjchu @ayerofieiev-tt @dmakoviichuk-tt @omilyutin-tt +ttnn/ttnn/distributed/ @cfjchu @ayerofieiev-tt @dmakoviichuk-tt @omilyutin-tt +tests/ttnn/distributed/ @cfjchu @ayerofieiev-tt @dmakoviichuk-tt @omilyutin-tt # models /models/ @tt-rkim @uaydonat From f305b490c5b0b9c6153751c64eca4daaafdada15 Mon Sep 17 00:00:00 2001 From: Brian Beggs Date: Fri, 22 Nov 2024 11:32:22 -0800 Subject: [PATCH 11/37] Rename MFB-Fig3a.png to MfB-Fig3a.png (#15384) File Name Changed ### Ticket Link to Github Issue ### Problem description Provide context for the problem. ### What's changed Describe the approach used to solve the problem. Summarize the changes made and its impact. ### Checklist - [ ] Post commit CI passes - [ ] Blackhole Post commit (if applicable) - [ ] Model regression CI testing passes (if applicable) - [ ] Device performance regression CI testing passes (if applicable) - [ ] New/Existing tests provide coverage for changes --- docs/source/common/images/MFB-Fig3a.png | Bin 3371369 -> 0 bytes docs/source/common/images/MfB-Fig3a.png | 1 + 2 files changed, 1 insertion(+) delete mode 100644 docs/source/common/images/MFB-Fig3a.png create mode 100644 docs/source/common/images/MfB-Fig3a.png diff --git a/docs/source/common/images/MFB-Fig3a.png b/docs/source/common/images/MFB-Fig3a.png deleted file mode 100644 index ebba343a18d61fc75298243998369031f171b342..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3371369 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

LA{B84@#iWKr$%bopa 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