コード例 #1
0
def test_fcounters():
    """Sample for an expected property in fcounters."""

    log = backend.log_open("tests/input/sample.darshan")

    rec = backend.log_get_mpiio_record(log)
    assert rec['fcounters'][1] == 2.04800000e+03
コード例 #2
0
def test_fcounters():
    """Sample for an expected property in fcounters."""

    log = backend.log_open("tests/input/sample.darshan")

    rec = backend.log_get_record(log, "POSIX")
    assert rec['fcounters'][0] == 3.9191410541534424
コード例 #3
0
def test_counters():
    """Sample for an expected property in counters."""

    log = backend.log_open("tests/input/sample.darshan")

    rec = backend.log_get_record(log, "POSIX")
    assert rec['counters'][0] == 2049
コード例 #4
0
def test_fcounters():
    """Sample for an expected property in fcounters."""

    log = backend.log_open("tests/input/sample.darshan")

    rec = backend.log_get_record(log, "STDIO")
    assert rec['fcounters'][3] == 0.0
コード例 #5
0
def test_counters():
    """Sample for an expected property in counters."""

    log = backend.log_open("tests/input/sample.darshan")

    rec = backend.log_get_stdio_record(log)
    assert rec['counters'][1] == 18446744073709551615
コード例 #6
0
def test_repeated_access():
    """ Check if repeated access is working."""

    log = backend.log_open("tests/input/sample.darshan")

    rec = backend.log_get_mpiio_record(log)
    rec = backend.log_get_mpiio_record(log)  # fetch next

    assert rec is None
コード例 #7
0
def test_repeated_access():
    """ Check if repeated access is working."""

    log = backend.log_open("tests/input/sample.darshan")

    rec = backend.log_get_record(log, "STDIO")
    rec = backend.log_get_record(log, "STDIO")  # fetch next

    assert rec['counters'][3] == 68
コード例 #8
0
def test_cannotopen():
    """Ensure we do not dump core on error."""

    # assert fake log file name comes back with a NULL file handle
    log = backend.log_open("fake/tooth-fairy.darshan")
    c_file_handle_repr = log['handle'].__repr__()
    assert 'NULL' in c_file_handle_repr

    # assert no record is returned using above NULL file handle
    rec = backend.log_get_record(log, "MPI-IO")
    assert rec == None
コード例 #9
0
ファイル: report.py プロジェクト: gaocegege/darshan
    def open(self, filename, read_all=False):
        """
        Open log file via CFFI backend.

        Args:
            filename (str): filename to open (optional)
            read_all (bool): whether to read all records for log

        Return:
            None

        """

        self.filename = filename

        if filename:
            self.log = backend.log_open(self.filename)
            if not bool(self.log['handle']):
                raise RuntimeError("Failed to open file.")

            self.read_metadata(read_all=read_all)

            if read_all:
                self.read_all()
コード例 #10
0
def test_dxt_records(logfile, mod, expected_dict):
    # regression guard for DXT records values
    logfile = os.path.join("tests/input", logfile)
    log = backend.log_open(logfile)
    rec = backend.log_get_record(log, mod)
    assert rec == expected_dict
コード例 #11
0
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import darshan.backend.cffi_backend as backend

log = backend.log_open("example.darshan")
mods = backend.log_get_modules(log)

nrecs = backend.log_get_name_records(log)

# reliable hashes: 15920181672442173319 (stdout), 14734109647742566553 (stdin), 7238257241479193519 (stderr)
selected_nrecs = backend.log_lookup_name_records(log, [15920181672442173319])