Skip to content

Make binary recording memmap efficient III (Avoiding spikes by only reserving memory equal to the trace) #1029

Make binary recording memmap efficient III (Avoiding spikes by only reserving memory equal to the trace)

Make binary recording memmap efficient III (Avoiding spikes by only reserving memory equal to the trace) #1029

Workflow file for this run

name: Profile Imports
on:
pull_request:
types: [synchronize, opened, reopened]
branches:
- main
concurrency: # Cancel previous workflows on the same pull request
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test-and-profile-main-imports:
name: Profile imports on ${{ matrix.os }} OS
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install Spikeinterface with only core dependencies
run: |
git config --global user.email "[email protected]"
git config --global user.name "CI Almighty"
python -m pip install -U pip # Official recommended way
pip install -e . # This should install core only
- name: Profile Imports
run: |
echo "## OS: ${{ matrix.os }}" >> $GITHUB_STEP_SUMMARY
echo "---" >> $GITHUB_STEP_SUMMARY
echo "### Import times when only installing only core dependencies " >> $GITHUB_STEP_SUMMARY
python ./.github/import_test.py >> $GITHUB_STEP_SUMMARY
shell: bash # Necessary for pipeline to work on windows
- name: Install in full mode
run: |
python -m pip install -U pip # Official recommended way
pip install -e .[full]
- name: Profile Imports with full
run: |
# Add a header to separate the two profiles
echo "---" >> $GITHUB_STEP_SUMMARY
echo "### Import times when installing full dependencies in " >> $GITHUB_STEP_SUMMARY
python ./.github/import_test.py >> $GITHUB_STEP_SUMMARY
shell: bash # Necessary for pipeline to work on windows