示例#1
0
    def from_trace_df(cls, trace_df):
        """Creates a `TraceUsage` object from `trace_df`.

        Parameters
        ----------
        trace_df: pd.DataFrame
            The pandas DataFrame containing the raw trace data.

        Returns
        -------
        TraceUsage
            A `TraceUsage` object based on the data in `trace_df`.

        """
        mem_allocated = utils.calculate_max_allocated(
            trace_df, specs.TOTAL_MEM_COL)
        cpu_allocated = utils.calculate_allocated_from_percentile(
            trace_df, specs.MAX_CPU_COL, specs.CPU_ALLOC_PERCENTILE)
        mem_ts = utils.cap_and_clean_values(
            trace_df, specs.MAX_MEM_COL, mem_allocated)
        cpu_ts = utils.cap_and_clean_values(
            trace_df, specs.MAX_CPU_COL, cpu_allocated)
        return cls(mem_allocated, cpu_allocated, mem_ts, cpu_ts)
示例#2
0
def test_with_nan(mock_df):
    result = cap_and_clean_values(mock_df, "C", 1.0)
    assert result.tolist() == [1.0, 0.0, 0.1]
示例#3
0
def test_with_cap(mock_df):
    result = cap_and_clean_values(mock_df, "B", 1.0)
    assert result.tolist() == [1.0, 0.9, 1.0]
示例#4
0
def test_with_no_cap(mock_df):
    result = cap_and_clean_values(mock_df, "A", 1.0)
    assert result.tolist() == [0.7, 0.6, 0.8]
示例#5
0
def test_with_one_element_dataframe():
    df = pd.DataFrame({"A": [1.1], "B": [0.7]})
    result = cap_and_clean_values(df, "A", 1.0)
    assert result.tolist() == [1.0]
示例#6
0
def test_with_empty_dataframe():
    df = pd.DataFrame({"A": [], "B": []})
    result = cap_and_clean_values(df, "A", 1.0)
    assert result.tolist() == []