Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 4 из 4
  1. #1
    Аватар для punkochel
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.12.2018
    Адрес
    Россия
    Сообщений
    146
    Репутация:
    25 ±

    Выделение RAM для AMX / SAMP

    Есть какое-то ограничение SAMP на используемую память?
    То есть будет ли АМХ использовать всю физически доступную оперативную память, или на каком-то значении она начнет перезапись или даже выход за пределы?
    К примеру: На машине 8 Гб RAM, 2 из них использует ОС и другие программы, то сможет ли АМХ захватить все 6 Гб RAM под SAMP сервер, и сможет ли сам SAMP пользоваться всем этим диапазоном?
    Последний раз редактировалось punkochel; 08.03.2023 в 11:32.

  2. #2
    Аватар для Nexius_Tailer
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.01.2015
    Адрес
    Гомель, Беларусь
    Сообщений
    547
    Репутация:
    158 ±
    SA-MP сервер 32-битный, а потому более двух гигабайт уже на этом этапе он не займет.
    Последний раз редактировалось Nexius_Tailer; 08.03.2023 в 15:20.
    Не хотите постоянно проверять обновления моих скриптов?
    Подключите его последним, после всех остальных
    Nexius's Update Checker

  3. Пользователь сказал cпасибо:
    punkochel (08.03.2023)
  4. #3
    Аватар для punkochel
    Пользователь

    Статус
    Оффлайн
    Регистрация
    08.12.2018
    Адрес
    Россия
    Сообщений
    146
    Репутация:
    25 ±
    Интересненько, в силу того что адреса не могут быть отрицательными, я думал что 32-битное приложение сможет отхватить себе 4 Гб, но тут ты ответил что не более двух. Полез искать: Получается если ОС 32-х битная, то адресное пространство ограничено 4-мя Гб, при этом Win32 с ходу забирает себе примерно половину этого пространства (даже если оно и не задействовано полностью), так и получается что 2 Гб отведено приложению, а если ОС 64-х битная, то 32-х битное приложение может использовать все 4 Гб.
    Но у нас же есть еще по сути эмулятор в виде 32-х битной АМХ-машины, которая вероятнее всего подготавливает память по аналогии Win32. Поэтому и получается что SA:MP сможет использовать только 2 Гб оперативной памяти.
    Так же тестовым методом выяснил что максимальный размер статического массива, который может проглотить компилятор — 536_870_911.

    Я могу конечно тут где-то ошибаться, но тема весьма интересная. Подскажите если где был не прав.

    UPD:
    Тогда если ОС 32-х битная и SAMP использует свои 2 Гб, 2 Гб использует ОС, то АМХ как работает? Или я просто не смогу запустить/скомпилировать на 32-битной ОС программу (мод самп) которая использует 2 Гб памяти?
    Под AMX я понимаю виртуальную машину, программу в которой запускается SAMP.
    Последний раз редактировалось punkochel; 08.03.2023 в 22:12.

  5. #4
    Аватар для Nexius_Tailer
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.01.2015
    Адрес
    Гомель, Беларусь
    Сообщений
    547
    Репутация:
    158 ±
    Цитата Сообщение от punkochel Посмотреть сообщение
    Тогда если ОС 32-х битная и SAMP использует свои 2 Гб, 2 Гб использует ОС, то АМХ как работает? Или я просто не смогу запустить/скомпилировать на 32-битной ОС программу (мод самп) которая использует 2 Гб памяти?
    Вылетит скорее всего просто в процессе работы/запуска. В любом случае нет никаких адекватных примеров, где ты бы мог до такого дойти на практике.
    Не хотите постоянно проверять обновления моих скриптов?
    Подключите его последним, после всех остальных
    Nexius's Update Checker

  6. Пользователь сказал cпасибо:
    punkochel (11.03.2023)
 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •