Задать вопрос
  • Как нагрузить расчёт в однопоточной программе C++ до 90-100% на используемом ядре?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Wataru, Мне сейчас пришло осознание, что про 10-15 процентов - это я ошибочно определил, т.к. речь идёт о 2-4% от всех CPU, которых у меня 24 ядра. 2-4% Показывал диспетчер задач:
    3e4ddc9a29ad3a33ad905843cdf59ea0.png

    В профайлере показывает так, но вот Kernel-то меня и смущает? Почему "какой-то" kernel занимает 86%, а программа только 13.5?
    bf94dcaa165fd6f47705f8e9496e7c6d.png
    Написано
  • Как нагрузить расчёт в однопоточной программе C++ до 90-100% на используемом ядре?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Уверен, что 10-15% от ядра, программа не распараллелена, точно однопоточное. Пауз sleep точно нет. Работа с библиотекой GMP/MPFR, но, по моему это не важно, т.к. GMP вполне умеет нагружать как надо. Обращение к памяти вполне может быть очень активным, т.к. много чего делается на std::vector. Но действительно ли это обращение так сильно влияет на производительность? Почему само выделение/освобождение памяти проходит так медленно, с учётом того, что оно сама память по объёму в программе не сильно меняется за время расчёта?
    Написано
  • Как нагрузить расчёт в однопоточной программе C++ до 90-100% на используемом ядре?

    AlexXYZ
    @AlexXYZ Автор вопроса
    mayton2019, Профиллировщие говорит, что больше всего cpu потребляется вне программы, поэтому я предположил, что может быть тратится время на работу с памятью:

    373d5afa8055246f6a04774e79f8fe5e.png

    Кода очень много (СGAL)
    Написано
  • C++ std::cout не выводит ничего?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Wataru,
    Спасибо за подсказку, не знал такого способа, но ничего подобного не нашёл. Есть ли ещё способ как-то переключить вывод? (Я понял прикол, попробую ещё что-то поискать).
    Написано
  • C++ std::cout не выводит ничего?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Wataru, нет, не выключено - printf выводит текст без проблем.
    Написано
  • C++ std::cout не выводит ничего?

    AlexXYZ
    @AlexXYZ Автор вопроса
    std::cout - не макрос. Не могу себе представить как его можно экранировать.
    fd5c443fc75dd2db1e2817e7fcd5e40c.png
    Написано
  • C++ std::cout не выводит ничего?

    AlexXYZ
    @AlexXYZ Автор вопроса
    res2001, Пример есть, но от этого не легче:
    63ecb6532aab003a48c3174dcd4194c9.png
    Полный код, к сожалению, дать не могу.

    В режиме Debug выводится и 1 и 2, а в режиме Release, только 1. Причём я сделал тестовое консольное приложение в Visual Studio 2022 и в нём выводится 1 и 2 и в режиме Debug и в режиме Release.

    Сейчас перевожу свои сообщения на printf и это меня вполне устраивает, т.к. сообщения клиенту всё равно формируются в exception-ах. Консольные сообщения больше нужны для "визуального" анализа в процессе работы, не хотелось париться в форматированием в printf.
    Написано
  • На какой продукт последние два года переходят конструкторы автокада? И переходят ли?

    AlexXYZ
    @AlexXYZ
    brar, Забыл написать, что на моей памяти есть и противоположный пример. Есть такая компания Аскон, о ней я слышал положительный отзыв. Работал в относительно большой проектной компании тыщи на полторы человек, админом. Там внедряли Компас 3D, около двухсот лицензий, лет 25 назад, и тогда было приятное впечатление, что они даже чуть не ночевали с нашими сотрудниками, пока внедряли. Тогда лезли из кожи вон. Сейчас не знаю. )
    Так-то у нас на работе шутят, что альтернативой импортному ПО является, не российский аналог или свободное ПО, а "ломанное" импортное ПО.
    И дело не в том, что оно отечественное не такое уж и не годное, но вот сколько проблем было, чтобы как-то заставить Autodesk приоткрыть формат и они немного уступили совместимому формату Teiga, но вот заменить Adobe вообще непонятно чем, не особо то их форматы и читаемы, кажется. Может как-то частично и можно их во что-то импортнуть, но если уж если у вас много библиотек внутренних под них, так очевидно, что тут всё плохо.
    Это мы ещё про редактирование полигональной графики не вспомнили. Можно было бы вспомнить про тот же Blender (я, кстати, его немного знаю) и мог бы посоветовать его, что в нём можно писать вполне приличные плагины на Python, которые вполне можно было бы попробовать загнать в качестве альтернативы расчётным программам для внутреннего пользования. Обычно пытаются писать сразу на Python и ищут пакеты визуализации под него, но получается в основном в PyPlot, который только для математических расчётов подходит, а уж про генерацию моделей речи не идёт, а вот с Blender вполне может получится неплохая альтернатива расчётным программам, т.к. это визуализатор, в который встроен Python. Т.е. инверсный подход первому случаю, не Python+визуализатор, а Визуализатор+Python. Но это так, личное мнение, просто как пища для размышления ))), а не как альтернатива чему уже устоявшемуся.
    Написано
  • Проблема изучения C++?

    AlexXYZ
    @AlexXYZ
    Станислав Романов, Вы ошибаетесь! Я далеко не большой специалист по ЯП, но кое что приходится делать. Свой первый ЯП написал вообще на LISP, хотя на тот момент знал C++. Тот ЯП был примитивный, не было циклов, но нашим дизайнерам в то время зашёл на ура (это был интерпретатор для отрисовки фирменных конструкций в автокаде). Что-то близкое к регуляркам. И это тоже ЯП. Отбросьте сомнение, что ЯП - это только что-то монстрообразное типа C++, C#, JAVA, Python. Это может быть и короткий набор инструкций. Есть у меня программа, которые генерит себе код на основе других выражений и сама же их выполняет (есть у меня такой необычный проект. И проект этот смог сделать только я один, потому что никто не знал как к нему подступиться вообще, потешил самолюбие). Поверьте - синтаксический анализ, на котором строится любой ЯП - дикая ахилесова пята программирования. Никто не хочет его изучать, а он нужен много где.
    Написано
  • C# Visual Studio QuickWatch как в коде получить строковое значение как в диалоговом окне?

    AlexXYZ
    @AlexXYZ Автор вопроса
    VoidVolker,
    Нене. Я слишком часто качаю всякие исходники и знаю во что иногда может вылиться совет:
    >> Серьезно? Скачать исходники...
    Что-то похожее иногда пишется к кликбейтных заголовках "Надо всего лишь скачать исходники..." )))

    Вы мне помогли съэкономить время. Я вам благодарен. Серьёзно. )
    Написано
  • C# Visual Studio QuickWatch как в коде получить строковое значение как в диалоговом окне?

    AlexXYZ
    @AlexXYZ Автор вопроса
    VoidVolker, Получается, что сложно получить эту строку. Я её лучше руками наберу из атрибутов, тем более это только для внутренних логов. Не стоит пока так глубоко копать ради сиюминутной задачи. Спасибо за подсказки.
    Написано
  • C# Visual Studio QuickWatch как в коде получить строковое значение как в диалоговом окне?

    AlexXYZ
    @AlexXYZ Автор вопроса
    VoidVolker, Так я по F12 уже смотрел. Похоже на то, что вы написали, только надо вместо false написать true:

    5cf589c3cbeb0c7198ea8488d8da11c7.png
    Но там нет никаких отсылок к свойствам объекта.

    {DebuggerToString(),nq}
    Написано
  • Насколько Kestrel актуален для self-hosted web-сервера?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Василий Банников, Спасибо за подсказку! Получилось:

    8936c877f9c13a3f81bda565a5850b66.png

    (Сообщение об ошибке сгененировано в коде. Ответ от сервера 200)
    Написано
  • C# Visual Studio QuickWatch как в коде получить строковое значение как в диалоговом окне?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Василий Банников, Т.е. по сути где-то вот такая строка определена:

    $"{context.Request.Method} {context.Request.Scheme}://{context.Request.Host}/{context.Request.Path}/{context.Request.QueryString} {context.Request.Protocol}"


    77af80fa9a3560ba4cc7ae8f9bb4fced.png
    Написано
  • C# Visual Studio QuickWatch как в коде получить строковое значение как в диалоговом окне?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Василий Банников,
    >>а для чего?
    Тоже для отладки, например, при логировании. Мне он больше нравится, чем самому руками набивать такую большую строку.
    Так вроде получается, что нельзя? Или можно где-то посмотреть, как определён этот атрибут? По F12 не отображает в декомпилированной версии:

    67992e34aea2fe2316fb16d104b74f18.png
    Написано
  • C# Visual Studio QuickWatch как в коде получить строковое значение как в диалоговом окне?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Петр Круто, но это только для отладчика работает? Из кода никак не вызвать?
    c9ed0c078bd8c4fb0018a7b0f3de8ea9.png
    Написано
  • Насколько Kestrel актуален для self-hosted web-сервера?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Василий Банников Спасибо. Я понял. Только в моём случае требуется использовать Kestrel как self-hosted компонент. Если он входит в состав SDK, то как мне его "загнать" в свой проект? Я согласен даже переделать проект на .NET/Standard:
    a81837666cc963039dbe31df8818a67b.png
    Но как подключить aspnetcore к проекту? Сейчас все компоненты, связанные с ASPNET выглядят как deprecated:
    b57e62269dccfed687840e1d10cfc152.png
    Написано
  • Автоматическая генерация классов на основе других классов?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Не, generic не подходит. Хотелось бы, чтобы всё "это" нормально подхватывалось intellisence.
    Написано
  • Автоматическая генерация классов на основе других классов?

    AlexXYZ
    @AlexXYZ Автор вопроса
    Рефлексия работает при запущенной программе. Хотелось бы сделать разбор до запуска.
    Еще лучше делать первичное описание сущности не на ЯП а на DSL

    Примерно так я сейчас и делаю, но хотелось бы всё-таки иметь статический генератор.
    Написано