Я пытаюсь написать эффективный многоэтапный решатель в C ++, используя библиотеку собственного. Для этого мне нужно несколько переменных, которые отслеживают историю. Один из них имеет тип собственного :: vectorx dd , который изменяется до 10000 где -то в моем коде инициализации.
Несмотря на то, что я знаю размер dd во время компиляции, мне нужно распределить его на кучу, потому что dd слишком велик для стека (по крайней мере, это то, что говорит Visual Studio 2022 я). Я постараюсь объяснить, почему:
[*] Вы могли заметить, что dd является вектором размера 10000 на куче. Его элементы имеют матрицу типа , следовательно, живут в стеке (?). Написание этого текста уже звучит неправильно для меня. Можно ли иметь объект, который выделяется как на кучу, так и на стеке? Или компилятор движет все на куче? dd ?
[*] Я думал, что заменяю матрицу by matrixxd и дай это пытаться. Ну, это работает, но все на 15-20%. Итак, почему -то я думаю, что этот вопрос дает ответ на мой первый и второй вопрос, но я действительно еще не убежден. < /P>
< /li>
Если бы я мог заменить Vectorx vector это повысит производительность? Как я могу «заставить» использовать свою программу вместо кучи? > быть определенным? Я заменил собственное :: vector на std :: vector , что на самом деле ничего не изменило, по крайней мере, на стороне производительности.
< /ol>
Мне нужно все время читать из dd , поэтому любая помощь высоко ценится.
Подробнее здесь: https://stackoverflow.com/questions/794 ... allocation
Собственное: советы, необходимые для распределения памяти ⇐ C++
Программы на C++. Форум разработчиков
-
Anonymous
1740480491
Anonymous
Я пытаюсь написать эффективный многоэтапный решатель в C ++, используя библиотеку собственного. Для этого мне нужно несколько переменных, которые отслеживают историю. Один из них имеет тип собственного :: vectorx dd , который изменяется до 10000 где -то в моем коде инициализации.
Несмотря на то, что я знаю размер dd во время компиляции, мне нужно распределить его на кучу, потому что dd слишком велик для стека (по крайней мере, это то, что говорит Visual Studio 2022 я). Я постараюсь объяснить, почему:
[*] Вы могли заметить, что dd является вектором размера 10000 на куче. Его элементы имеют матрицу типа , следовательно, живут в стеке (?). Написание этого текста уже звучит неправильно для меня. Можно ли иметь объект, который выделяется как на кучу, так и на стеке? Или компилятор движет все на куче? dd ?
[*] Я думал, что заменяю матрицу by matrixxd и дай это пытаться. Ну, это работает, но все на 15-20%. Итак, почему -то я думаю, что этот вопрос дает ответ на мой первый и второй вопрос, но я действительно еще не убежден. < /P>
< /li>
Если бы я мог заменить Vectorx vector это повысит производительность? Как я могу «заставить» использовать свою программу вместо кучи? > быть определенным? Я заменил собственное :: vector на std :: vector , что на самом деле ничего не изменило, по крайней мере, на стороне производительности.
< /ol>
Мне нужно все время читать из dd , поэтому любая помощь высоко ценится.
Подробнее здесь: [url]https://stackoverflow.com/questions/79463761/eigen-advice-needed-for-memory-allocation[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия