blob: bed7ff81cc873de17382f5d0cf4dedf45fb4ef4f [file]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# profiler setting methods
#
#' @export
MX.PROF.STATE <- list(STOP = 0L, RUN = 1L)
#' Set up the configuration of profiler.
#'
#' @param flags list of key/value pair tuples. Indicates configuration parameters
#' profile_symbolic : boolean, whether to profile symbolic operators
#' profile_imperative : boolean, whether to profile imperative operators
#' profile_memory : boolean, whether to profile memory usage
#' profile_api : boolean, whether to profile the C API
#' file_name : string, output file for profile data
#' continuous_dump : boolean, whether to periodically dump profiling data to file
#' dump_period : float, seconds between profile data dumps
#' @export
mx.profiler.config <- function(params) {
mx.internal.profiler.config(params)
}
#' Set up the profiler state to record operator.
#'
#' @param state Indicting whether to run the profiler, can be 'MX.PROF.STATE$RUN' or 'MX.PROF.STATE$STOP'. Default is `MX.PROF.STATE$STOP`.
#' @param filename The name of output trace file. Default is 'profile.json'
#'
#' @export
mx.profiler.state <- function(state = MX.PROF.STATE$STOP) {
mx.internal.profiler.state(state)
}