@@ -106,18 +106,18 @@ static class SetLimits {
106
106
size_t SlabMinSize[3 ] = {64 * 1024 , 64 * 1024 , 2 * 1024 * 1024 };
107
107
108
108
// Allocations up to this limit will be subject to chunking/pooling
109
- size_t MaxPoolableSize[3 ] = {0 , 32 * 1024 , 0 };
109
+ size_t MaxPoolableSize[3 ] = {2 * 1024 * 1024 , 4 * 1024 * 1024 , 0 };
110
110
111
111
// When pooling, each bucket will hold a max of 4 unfreed slabs
112
- size_t Capacity[3 ] = {0 , 0 , 0 };
112
+ size_t Capacity[3 ] = {4 , 4 , 0 };
113
113
114
114
// Maximum memory left unfreed in pool
115
- size_t MaxPoolSize = 0 ;
115
+ size_t MaxPoolSize = 16 * 1024 * 1024 ;
116
116
117
117
size_t CurPoolSize = 0 ;
118
118
size_t CurPoolSizes[3 ] = {0 , 0 , 0 };
119
119
120
- bool EnableBuffers = false ;
120
+ bool EnableBuffers = true ;
121
121
122
122
// Whether to print pool usage statistics
123
123
int PoolTrace = 0 ;
@@ -134,17 +134,16 @@ static class SetLimits {
134
134
// pool size for all contexts.
135
135
// Duplicate specifications will result in the right-most taking effect.
136
136
//
137
- // Current defaults are to match pre-2021.3 pooling.
138
137
// EnableBuffers: Apply chunking/pooling to SYCL buffers.
139
- // Default 0 (false) .
138
+ // Default true .
140
139
// MaxPoolSize: Limit on overall unfreed memory.
141
- // Default 0MB .
140
+ // Default 16MB .
142
141
// MaxPoolableSize: Maximum allocation size subject to chunking/pooling.
143
- // Default 32KB .
142
+ // Default 2MB host, 4MB device and 0 shared .
144
143
// Capacity: Maximum number of unfreed allocations in each bucket.
145
- // Default 0 .
144
+ // Default 4 .
146
145
// SlabMinSize: Minimum allocation size requested from USM.
147
- // Default 64KB.
146
+ // Default 64KB host and device, 2MB shared .
148
147
//
149
148
// Example of usage:
150
149
// SYCL_PI_LEVEL_ZERO_USM_ALLOCATOR=1;32M;host:1M,4,64K;device:1M,4,64K;shared:0,0,2M
0 commit comments