diff --git a/tsl/profiler/lib/BUILD b/tsl/profiler/lib/BUILD index 87120c0af..332b83498 100644 --- a/tsl/profiler/lib/BUILD +++ b/tsl/profiler/lib/BUILD @@ -138,7 +138,7 @@ cc_library( ]), deps = [ "//tsl/profiler/protobuf:xplane_proto_cc", - "@xla//xla/tsl/platform:status", + "@com_google_absl//absl/status", ], ) diff --git a/tsl/profiler/lib/profiler_interface.h b/tsl/profiler/lib/profiler_interface.h index 2b0b71242..f555a032b 100644 --- a/tsl/profiler/lib/profiler_interface.h +++ b/tsl/profiler/lib/profiler_interface.h @@ -15,7 +15,9 @@ limitations under the License. #ifndef TENSORFLOW_TSL_PROFILER_LIB_PROFILER_INTERFACE_H_ #define TENSORFLOW_TSL_PROFILER_LIB_PROFILER_INTERFACE_H_ -#include "xla/tsl/platform/status.h" +#include + +#include "absl/status/status.h" #include "tsl/profiler/protobuf/xplane.pb.h" namespace tsl { @@ -41,6 +43,18 @@ class ProfilerInterface { // Saves collected profile data into XSpace. virtual absl::Status CollectData(tensorflow::profiler::XSpace* space) = 0; + + // Pulls collected profile data into arbitrary raw memory. + // Size refers to the amount of data memory `ptr` points to. + virtual absl::Status Consume(void* ptr, size_t size) { + return absl::UnimplementedError("Consume not implemented"); + } + + // Serializes collected profile data into a wire-transferrable format. + virtual absl::Status Serialize(void* ptr, size_t size, void* output, + size_t output_size) { + return absl::UnimplementedError("Serialize not implemented"); + } }; } // namespace profiler