Dynamic Load Balance 3.6.1+32-59d1
lewi_mask.h
Go to the documentation of this file.
1/*********************************************************************************/
2/* Copyright 2009-2021 Barcelona Supercomputing Center */
3/* */
4/* This file is part of the DLB library. */
5/* */
6/* DLB is free software: you can redistribute it and/or modify */
7/* it under the terms of the GNU Lesser General Public License as published by */
8/* the Free Software Foundation, either version 3 of the License, or */
9/* (at your option) any later version. */
10/* */
11/* DLB is distributed in the hope that it will be useful, */
12/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
13/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
14/* GNU Lesser General Public License for more details. */
15/* */
16/* You should have received a copy of the GNU Lesser General Public License */
17/* along with DLB. If not, see <https://www.gnu.org/licenses/>. */
18/*********************************************************************************/
19
20#ifndef LEWI_MASK_H
21#define LEWI_MASK_H
22
23#include "LB_core/spd.h"
24
31
34
36int lewi_mask_LendCpu(const subprocess_descriptor_t *spd, int cpuid);
37int lewi_mask_LendCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask);
38
40int lewi_mask_ReclaimCpu(const subprocess_descriptor_t *spd, int cpuid);
41int lewi_mask_ReclaimCpus(const subprocess_descriptor_t *spd, int ncpus);
42int lewi_mask_ReclaimCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask);
43
44int lewi_mask_AcquireCpu(const subprocess_descriptor_t *spd, int cpuid);
45int lewi_mask_AcquireCpus(const subprocess_descriptor_t *spd, int ncpus);
46int lewi_mask_AcquireCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask);
47int lewi_mask_AcquireCpusInMask(const subprocess_descriptor_t *spd, int ncpus, const cpu_set_t *mask);
48
50int lewi_mask_BorrowCpu(const subprocess_descriptor_t *spd, int cpuid);
51int lewi_mask_BorrowCpus(const subprocess_descriptor_t *spd, int ncpus);
52int lewi_mask_BorrowCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask);
53int lewi_mask_BorrowCpusInMask(const subprocess_descriptor_t *spd, int ncpus, const cpu_set_t *mask);
54
56int lewi_mask_ReturnCpu(const subprocess_descriptor_t *spd, int cpuid);
57int lewi_mask_ReturnCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask);
58
60int lewi_mask_UpdateOwnership(const subprocess_descriptor_t *spd, const cpu_set_t *process_mask);
61
62#endif /* LEWI_MASK_H */
int lewi_mask_SetMaxParallelism(const subprocess_descriptor_t *spd, int max)
Definition: lewi_mask.c:383
int lewi_mask_Borrow(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:687
int lewi_mask_UnsetMaxParallelism(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:397
int lewi_mask_UpdateOwnership(const subprocess_descriptor_t *spd, const cpu_set_t *process_mask)
Definition: lewi_mask.c:821
int lewi_mask_EnableDLB(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:368
int lewi_mask_BorrowCpus(const subprocess_descriptor_t *spd, int ncpus)
Definition: lewi_mask.c:702
int lewi_mask_LendCpu(const subprocess_descriptor_t *spd, int cpuid)
Definition: lewi_mask.c:560
int lewi_mask_AcquireCpusInMask(const subprocess_descriptor_t *spd, int ncpus, const cpu_set_t *mask)
Definition: lewi_mask.c:658
int lewi_mask_ReclaimCpus(const subprocess_descriptor_t *spd, int ncpus)
Definition: lewi_mask.c:612
int lewi_mask_AcquireCpu(const subprocess_descriptor_t *spd, int cpuid)
Definition: lewi_mask.c:633
int lewi_mask_Init(subprocess_descriptor_t *spd)
Definition: lewi_mask.c:320
int lewi_mask_BorrowCpu(const subprocess_descriptor_t *spd, int cpuid)
Definition: lewi_mask.c:693
int lewi_mask_Finalize(subprocess_descriptor_t *spd)
Definition: lewi_mask.c:342
int lewi_mask_LendCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask)
Definition: lewi_mask.c:576
int lewi_mask_IntoBlockingCall(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:424
int lewi_mask_ReturnCpu(const subprocess_descriptor_t *spd, int cpuid)
Definition: lewi_mask.c:764
int lewi_mask_DisableDLB(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:374
int lewi_mask_Lend(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:554
int lewi_mask_BorrowCpusInMask(const subprocess_descriptor_t *spd, int ncpus, const cpu_set_t *mask)
Definition: lewi_mask.c:710
int lewi_mask_ReturnCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask)
Definition: lewi_mask.c:786
int lewi_mask_CheckCpuAvailability(const subprocess_descriptor_t *spd, int cpuid)
Definition: lewi_mask.c:817
int lewi_mask_Return(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:739
int lewi_mask_OutOfBlockingCall(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:459
int lewi_mask_ReclaimCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask)
Definition: lewi_mask.c:621
int lewi_mask_Reclaim(const subprocess_descriptor_t *spd)
Definition: lewi_mask.c:597
int lewi_mask_AcquireCpus(const subprocess_descriptor_t *spd, int ncpus)
Definition: lewi_mask.c:642
int lewi_mask_AcquireCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask)
Definition: lewi_mask.c:654
int lewi_mask_ReclaimCpu(const subprocess_descriptor_t *spd, int cpuid)
Definition: lewi_mask.c:603
int lewi_mask_BorrowCpuMask(const subprocess_descriptor_t *spd, const cpu_set_t *mask)
Definition: lewi_mask.c:706
Definition: spd.h:33