Size: a a a

2020 September 08

N2

N 2 in pro.cxx
понял, принял
источник

D

Danya in pro.cxx
Alex
Вчера ночью размышлял над своим игрушечным проектом, и полезли в голову странные идеи, как иногда бывает далеко за полночь. А именно: сделать memory_resource и аллокатор к нему, такой, чтобы любой allocator-aware контейнер можно было хранить на диске вместо RAM (необязательно сам объект контейнера, а именно его внутренние данные - то, что потребляет много памяти). Дисковую память отслеживать страницами/блоками/кластерами, непрерывность виртуальных адресов обеспечивать страничной организацией. Саму таблицу кластеров/страниц хранить в RAM.

Такое возможно сделать на std::memory_resource, и будет ли это работать как ожидается, т. е. прозрачно для контейнера и для пользователя этого контейнера хранить данные на диске вместо RAM?
Попробуй посмотреть PMDK
источник

D

Danya in pro.cxx
А конкретно libpmemobj-cpp
источник

A

Alex in pro.cxx
спасибо
источник

ПК

Побитый Кирпич... in pro.cxx
N 2
как с помощью typeid получить нормально имя класса без всяких индетификаторов и неймспейсов?
источник

N2

N 2 in pro.cxx
Без сторонних либ никак?
источник

NP

Nikita Provotorov in pro.cxx
N 2
Без сторонних либ никак?
никак
источник

ПК

Побитый Кирпич... in pro.cxx
N 2
Без сторонних либ никак?
пока никак
источник

ПК

Побитый Кирпич... in pro.cxx
Alex
Вчера ночью размышлял над своим игрушечным проектом, и полезли в голову странные идеи, как иногда бывает далеко за полночь. А именно: сделать memory_resource и аллокатор к нему, такой, чтобы любой allocator-aware контейнер можно было хранить на диске вместо RAM (необязательно сам объект контейнера, а именно его внутренние данные - то, что потребляет много памяти). Дисковую память отслеживать страницами/блоками/кластерами, непрерывность виртуальных адресов обеспечивать страничной организацией. Саму таблицу кластеров/страниц хранить в RAM.

Такое возможно сделать на std::memory_resource, и будет ли это работать как ожидается, т. е. прозрачно для контейнера и для пользователя этого контейнера хранить данные на диске вместо RAM?
Следующий шаг - cloud_vector с O(1) по памяти, который хранит свои элементы в облаке.
источник

A

Alex in pro.cxx
в общем-то да, это уже мелочи реализации)
источник

A

Alex in pro.cxx
при наличии работающего первоначального варианта с диском
источник

AZ

Alexander Zaitsev in pro.cxx
Побитый Кирпич
Следующий шаг - cloud_vector с O(1) по памяти, который хранит свои элементы в облаке.
ну достаточно дампить на диск в место, где примонтирована fuse_fs :)
источник

m

magras in pro.cxx
PhantomOS изобретаем?
источник

ej

elton john in pro.cxx
всем привет, надеюсь не слишком глупый вопрос: как в своей структуре сделать что-то наподобии variant? То есть объявить данные в зависимости от компиляции
источник

D

Danya in pro.cxx
elton john
всем привет, надеюсь не слишком глупый вопрос: как в своей структуре сделать что-то наподобии variant? То есть объявить данные в зависимости от компиляции
1) тебе в @supapro
2) ничего не понятно
источник

CD

Constantine Drozdov in pro.cxx
elton john
всем привет, надеюсь не слишком глупый вопрос: как в своей структуре сделать что-то наподобии variant? То есть объявить данные в зависимости от компиляции
что значит в зависимости от компиляции? ifdef? зависимость на шаблонный параметр? variant?
источник

ПК

Побитый Кирпич... in pro.cxx
Alex
Вчера ночью размышлял над своим игрушечным проектом, и полезли в голову странные идеи, как иногда бывает далеко за полночь. А именно: сделать memory_resource и аллокатор к нему, такой, чтобы любой allocator-aware контейнер можно было хранить на диске вместо RAM (необязательно сам объект контейнера, а именно его внутренние данные - то, что потребляет много памяти). Дисковую память отслеживать страницами/блоками/кластерами, непрерывность виртуальных адресов обеспечивать страничной организацией. Саму таблицу кластеров/страниц хранить в RAM.

Такое возможно сделать на std::memory_resource, и будет ли это работать как ожидается, т. е. прозрачно для контейнера и для пользователя этого контейнера хранить данные на диске вместо RAM?
ну если ты хочешь, чтоб это работало с STL контейнерами, то сомневаюсь что это возможно, т.к. там мне кажется привязка к RAM большая. На любой объект можно взять ссылку и указатель
источник

ej

elton john in pro.cxx
Constantine Drozdov
что значит в зависимости от компиляции? ifdef? зависимость на шаблонный параметр? variant?
ой, соре плыву. на этапе компиляции в зависимости от шаблонного параметра (просто в голове все перемешалось)
источник

CD

Constantine Drozdov in pro.cxx
Alex
Вчера ночью размышлял над своим игрушечным проектом, и полезли в голову странные идеи, как иногда бывает далеко за полночь. А именно: сделать memory_resource и аллокатор к нему, такой, чтобы любой allocator-aware контейнер можно было хранить на диске вместо RAM (необязательно сам объект контейнера, а именно его внутренние данные - то, что потребляет много памяти). Дисковую память отслеживать страницами/блоками/кластерами, непрерывность виртуальных адресов обеспечивать страничной организацией. Саму таблицу кластеров/страниц хранить в RAM.

Такое возможно сделать на std::memory_resource, и будет ли это работать как ожидается, т. е. прозрачно для контейнера и для пользователя этого контейнера хранить данные на диске вместо RAM?
А зачем, если ось свопами делает это за тебя?
источник

CD

Constantine Drozdov in pro.cxx
elton john
ой, соре плыву. на этапе компиляции в зависимости от шаблонного параметра (просто в голове все перемешалось)
std::conditional_t
источник