Skip to content

Segfault with ScoreP9.0 #169

@kusnezoff-alexander

Description

@kusnezoff-alexander

When running the Sbatch-Script (see below) I receive a segfault when using ScoreP9.0, but everything works fine with ScoreP8.4.

Sbatch Script

#!/bin/bash                                                                                                                                                                                                                                                                 
#SBATCH --job-name=scorep9-0_segfault
#SBATCH --output=logs/%j_node-%N.out                                                                                                                                                                                                                               
#SBATCH --error=logs/%j_node-%N.err                                                                                                                                                                                                                                
#SBATCH --nodes=1                                                                                                                                                                                                                                    
#SBATCH --time=01:00:00                                                                                                                 
#SBATCH --gres=gpu:1                                                                                                                    
#SBATCH --mem=100GB                                                                                                                     
                                                                                                                                                                                                                                          
export SCOREP_PROFILING_MAX_CALLPATH_DEPTH=500
export SCOREP_ENABLE_TRACING=true                                                                                                       
export SCOREP_IO_POSIX=true                                                                                                             
                                                                                                                                                                                                                         
ml --force purge                                                                                                                                                                                                                      
spack load python@3.10 openmpi@5.0.7 scorep@8.4 # using `scorep9.0` instead gives a segfault                                                                                                                           
python3 -m venv .venv_3-10                                                                                                              
source .venv_3-10/bin/activate                                                                                                         
pip install -r requirements.txt                                                                                                                                                                                                              
srun python3 -m scorep --io=posix test_scorep_io.py                                                                                    

Python Example

import os                                 
import shutil
import stat
import time

def main():
    dir_name = "my_test_dir"                                  

    if os.path.exists(dir_name):
        if os.path.isdir(dir_name):
            shutil.rmtree(dir_name)
            print(f"Directory '{dir_name}' existed and was removed.")
        else:
            print(f"'{dir_name}' exists but is not a directory.")
            return

    # Step 1: Create the directory
    os.mkdir(dir_name)
    print(f"Directory '{dir_name}' created.")

    # Step 2: Get directory statistics
    try:
        info = os.stat(dir_name)

        print(f"\nDirectory: {dir_name}")
        print(f"Inode: {info.st_ino}")
        print(f"Size: {info.st_size} bytes")
        print(f"Permissions: {oct(info.st_mode & 0o777)}")
        print(f"Last modified: {time.ctime(info.st_mtime)}")

    except FileNotFoundError:
        print(f"Directory '{dir_name}' not found.")

if __name__ == "__main__":
    main()

Requirements.txt:

mpi4py==3.1.5
scorep==4.4.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions