Зарезервированная память R в два раза больше выделенного массива

Я заметил следующее поведение. Скажем, я создаю следующий многомерный массив:

spam = array(runif(96*48*60*360), dim = c(96,48,60,360))

Вполне предсказуемо, сколько памяти R должно использовать для этого, а именно (96 * 48 * 60 * 360) * 4 байта = 759,4 Мбайт. Это хорошо подтверждается с помощьюlsos функция (см.эта почта):

> lsos()
         Type      Size PrettySize Rows Columns
spam    array 796262520   759.4 Mb   96      48
lsos function       776  776 bytes   NA      NA

Однако R как процесс использует гораздо больше памяти, примерно в два раза больше:

$ top | grep rsession
82:17628 hiemstra  20   0 1614m **1.5g** 8996 S  0.3 40.4   0:04.85 rsession  

Почему R делает это? Я предполагаю, что дополнительная зарезервированная память выделена, чтобы сделать ее более доступной для R? Любая мысль?

Ответы на вопрос(1)

Ваш ответ на вопрос