SERVER OFFERS @ 40% DISCOUNT 4 LIFE ★ 16GB + RAM ★ 8 cores + Xeon CPU ★ Free SSD ★ 100TB B / W @ 1GBit ★ US | Proxies123.com

DEDICATED SERVER OFFERS 2020! 40% DISCOUNT ON ALL DEDICATED SERVERS VALID UNTIL ACTIONS

SSD Cloud proudly announces the SERVER OFFERS V & # 39; DAY 2020 in our Self-Managed Dedicated Servers and Hosting of Managed Dedicated Servers. Looking for a high-performance, business-ready server? Do you need large RAM for your hungry applications or those of your clients? Does it require a network with real work performance? Do you need a high storage server for external backup services? Your search would stop here with the following high performance dedicated servers at a very affordable price and quality support.

About SSD CLOUD!
CLOUD SSD is an American leader in the Hosting industry, has been in this industry since 2013. SSD CLOUD is a full service technology solutions provider, bringing you Web Hosting, Hosting Reseller, SSD Cloud Server, Self Managed VPS, Managed cPanel VPS and High performance dedicated servers. We offer affordable, flexible and reliable services! It is a name that you will grow with and learn to trust in all of your hosting solutions.

Why choose us?
We provide affordable, reliable, and high-performance hosting services to people around the world. We offer high-quality services at a very reasonable price that help drive your business to online success. We maintain a stable hosting environment, serving clients with a dedicated team for technical and sales / billing support.

HURRY UP! Right now Take advantage of this offer for your personal or commercial use, before the EXCLUSIVE SALES OFFER expires!
Our special promotions are for a very limited time and stock only. So place your order right now and get the high quality accommodation at the very reasonable price.

Our features:
• 24 × 7 security and multilevel access control
• Power protection by UPS (N + 4) and 2MW backup generator
• Bandwidth provided by the main Tier 1 operators
• Connectivity provided by 7 diverse fiber operators.
• Strict climate control with Liebert CRAH units and cold water cooling
• Fire detection and suppression systems

Use the coupon codes below to receive up to 40% recurring discounts on all dedicated server plans!

40% RECURRING DISCOUNTS WITHIN ANNUAL BILLING PERIOD with coupon code "SSDCLOUD40"

15% RECURRING DISCOUNTS AT ANY BILLING TERM with coupon code "SSDCLOUD15"

♥ ♥♥ ♥♥ ♥♥ ♥♥ ♥ DEDICATED SERVER OFFERS 2020 VALID UNTIL SHARES LAST COUPON CODES GIVEN ABOVE. ♥ ♥♥ ♥♥ ♥♥ ♥♥ ♥

▐▌▐▌ Dual Intel Xeon 5420

* CPU: 2.5 Ghz x 2 CPU: 8 cores + 8 threads
* Port speed: 1 Gbps dedicated port
* Premium bandwidth: 100 TB monthly transfer
* Memory: 16GB DDR3 ECC RAM
* Primary Hard Drive: 2TB SATA or 240GB SSD
* Operating system: Linux / Windows *
* Free IPs: 5 usable IPv4 (/ 29) / IPv6: / 64
* 24×7 server monitoring (5 minute interval)
* Server Administration: Included (Silver Managed: $ 49 / m value)
* Control panel: included (free cPanel / WHM: $ 45 / m value)
* 100% uptime: network, power and cooling
* DC Location: MO, USA USA
Monthly price: $ 199 / m Now only $ 119 / m The | O | Self-managed server @ $ 63 / m just | Configuration fee ($ 49): Waived!

ORDER NOW – Dual Intel Xeon 5420

▐▌▐▌ Dual Intel Xeon 5520

* CPU: 2.26 Ghz x 2 CPU: (8 cores + 16 threads)
* Port speed: 1 Gbit dedicated port
* Premium bandwidth: 100 TB monthly transfer
* Memory: 24GB DDR3 ECC RAM
* Primary Hard Drive: 3TB SATA or 240GB SSD
* Operating system: Linux / Windows *
* Free IPs: 5 usable IPv4 (/ 29) / IPv6: / 64
* 24×7 server monitoring (5 minute interval)
* Server Administration: Included (Silver Managed: $ 49 / m value)
* Control panel: included (free cPanel / WHM: $ 45 / m value)
* 100% uptime: network, power and cooling
* DC Location: MO, USA USA
Monthly price: $ 249.95 / m Now only $ 149 / m The | O | Self-managed server @ $ 93 / m just | Configuration fee ($ 49): Waived!

ORDER NOW – Dual Intel Xeon 5520

▐▌▐▌ Intel Xeon E3-1230v2

* CPU: 2 processors – 3.2Ghz (4 cores + 8 threads)
* Port speed: 1 Gbit dedicated port
* Premium bandwidth: 100 TB monthly transfer
* Memory: 32GB DDR3 ECC RAM
* Primary Hard Drive: 2 x 2TB SATA3 or 2 x 240GB SSD
* Operating system: Linux / Windows *
* Free IPs: 5 usable IPv4 (/ 29) / IPv6: / 64
* 24×7 server monitoring (5 minute interval)
* Server Administration: Included (Silver Managed: $ 49 / m value)
* Control panel: included (free cPanel / WHM: $ 45 / m value)
* 100% uptime: network, power and cooling
* DC Location: MO, USA USA
Monthly price: $ 299.9 / m Now only $ 179 / m The | O | Self-managed server @ $ 123 / m only Configuration fee ($ 49): Waived!

ORDER NOW – Intel Xeon E3-1230v2

▐▌▐▌ Dual Intel Xeon 5639

* CPU: 2.13Ghz – 2 processors (12 cores + 24 threads)
* Port speed: 1 Gbit dedicated port
* Premium bandwidth: 100 TB monthly transfer
* Memory: 32GB DDR3 ECC RAM
* Primary hard drive: 4TB SATA or 480GB SSD
* Operating system: Linux / Windows *
* Free IPs: 5 usable IPv4 (/ 29) / IPv6: / 64
* 24×7 server monitoring (5 minute interval)
* Server Administration: Included (Silver Managed: $ 49 / m value)
* Control panel: included (free cPanel / WHM: $ 45 / m value)
* 100% uptime: network, power and cooling
* DC Location: MO, USA USA
Monthly price: $ 339.9 / m Now only $ 204 / m The | O | Self-managed server @ $ 147 / m just | Configuration fee ($ 49): Waived!

ORDER NOW – Dual Intel Xeon 5650

▐▌▐▌ Dual Intel Xeon E5-2670v2

* CPU: 2 processors – 2.5Ghz / 3.3Ghz Turbo: 20 cores / 40 threads
* Port speed: 1 Gbit dedicated port
* Premium bandwidth: 100 TB monthly transfer
* Memory: 96GB DDR3 ECC RAM
* Primary Hard Drive: 2 x 480GB SSD
* Operating system: Linux / Windows *
* Free IPs: 5 usable IPv4 (/ 29) / IPv6: / 64
* 24×7 server monitoring (5 minute interval)
* Server Administration: Included (Silver Managed: $ 49 / m value)
* Control panel: included (free cPanel / WHM: $ 45 / m value)
* 100% uptime: network, power and cooling
* DC Location: MO, USA USA
Monthly price: $ 399.98 / m Now only $ 240 / m The | O | Self-managed server @ $ 183 / m just | Configuration fee ($ 49): Waived!

ORDER NOW – Dual Intel Xeon E5-2670v2

Frequent questions:

1. Where is your DC located?
Our DC is located in MO, USA. USA

2. What payment method are you accepting?
We are accepting payments through PayPal, PayZa, Skrill, Bitcoin, debit / credit cards.

3. How long will it take to configure a server?
All custom servers will be configured in 1-2 business days.

P.S: * The offer price reflected above is shown after the discount with the annual billing term using the coupon code "SSDCLOUD40".
If you have any questions, please feel free to contact us. Visit our website for more information on DEDICATED SERVER ACCOMMODATION

c ++ – RAM usage of SDL2 application

I am developing a game that uses SDL2, SDL2 Image and SDL2 TTF, while using the clang compiler on Linux.
When run in launch mode (compiler flags: -Wall -O3) there is a constant I use about 52MB, I have checked with Valgrind to detect memory leaks and there are none.

My kind of game:

#include "Game.h"

Game::Game(Configurations configurations) {
  _graphics = std::make_unique(configurations.windowWidth,
                                         configurations.windowHeight,
                                         configurations.flags);
  _gameState = std::make_unique(configurations.windowWidth,
                                           configurations.windowHeight);
  _mouseInput = std::make_unique(MouseInput{-1, -1, 0});
  _fpsCounter = std::make_unique();
  _worldWidth = configurations.worldWidth;
  _worldHeight = configurations.worldHeight;
  _fpsCap = configurations.fpsCap;
}

auto Game::start() -> void {
  _fpsCounter->fpsInit();
  gameLoop(_fpsCap);
}

auto Game::convertStateToGraphicsMap()
    -> std::vector> {
  std::vector> convertedVector;

  for (auto o : _gameState->getGameObjects()) {
    convertedVector.push_back(
        std::make_pair(o.getTileType(), SDL_Point{(int)o.getPosition().x,
                                                  (int)o.getPosition().y}));
  }

  std::remove_if(convertedVector.begin(), convertedVector.end(),
                 (this)(std::pair o) {
                   return o.second.x - (int)_gameState->getCamera().x < 0 ||
                          o.second.y - (int)_gameState->getCamera().y < 0 ||
                          o.second.x - (int)_gameState->getCamera().x >
                              _graphics->getWindowWidth() ||
                          o.second.y - (int)_gameState->getCamera().y >
                              _graphics->getWindowHeight();
                 });

  for (auto &o : convertedVector) {
    o.second.x -= _gameState->getCamera().x;
    o.second.y -= _gameState->getCamera().y;
  }
  return convertedVector;
}

auto Game::checkForSDLQuitEvents() -> bool {
  SDL_Event event;
  while (SDL_PollEvent(&event)) {
    switch (event.type) {
    case SDL_QUIT:
      std::cout << "closeRequested! quitingn";
      return true;
    }
  }
  return false;
}

auto Game::validatePlayerPosition() -> void {
  Vector2d &playerPosition = _gameState->getPlayer()->getPosition();
  if (playerPosition.x < 0) {
    playerPosition.x = 0;
  }
  if (playerPosition.y < 0) {
    playerPosition.y = 0;
  }
  if (playerPosition.x > _worldWidth) {
    playerPosition.x = (float)_worldWidth;
  }
  if (playerPosition.y > _worldHeight) {
    playerPosition.y = (float)_worldHeight;
  }
}

auto Game::handleMouseState(float fps) -> void {
  _mouseInput->mouseState =
      SDL_GetMouseState(&_mouseInput->mouseX, &_mouseInput->mouseY);
  if (_mouseInput->mouseState & SDL_BUTTON(SDL_BUTTON_LEFT)) {
    // printf("SDL_MOUSEBUTTONDOWNn");
    auto halfWindowWidth = _graphics->getWindowWidth() / 2;
    auto halfWindowHeight = _graphics->getWindowHeight() / 2;
    _gameState->setCamera(
        {_gameState->getPlayer()->getPosition().x - halfWindowWidth,
         _gameState->getPlayer()->getPosition().y - halfWindowHeight});
    _gameState->getPlayer()->onDestinationSelected(
        {(float)_mouseInput->mouseX + _gameState->getCamera().x,
         (float)_mouseInput->mouseY + _gameState->getCamera().y},
        fps);

    validatePlayerPosition();
  }
}

auto Game::gameLoop(float fpsCap) -> void {
  float minFrameRateDelay = MILLISECOND_IN_SECOND / fpsCap;
  while (true) {
    // process events
    if (checkForSDLQuitEvents())
      return;

    _graphics->clearRender();
    float averageFPS = _fpsCounter->getAverageFramesPerSecond();
    handleMouseState(averageFPS);
    _graphics->renderGrid(convertStateToGraphicsMap());
    _graphics->renderText("FPS: " + std::to_string(averageFPS),
                          {255, 255, 0, 255}, 0, 0);
    _graphics->presentRender();

    if (fpsCap < averageFPS) {
      SDL_Delay(minFrameRateDelay);
    }
    _fpsCounter->fpsThink();
  }
}

auto Game::loadMap(const char *filename) -> void {
  int current, mx, my, mw, mh;
  std::ifstream in(filename);
  if (!in.is_open()) {
    std::cout << "Failed to open map file." << std::endl;
    return;
  }
  in >> mw;
  in >> mh;
  in >> mx;
  in >> my;
  for (int i = 0; i < mh; i++) {
    for (int j = 0; j < mw; j++) {
      if (in.eof()) {
        std::cout << "Reached end of map file too soon." << std::endl;
        return;
      }
      in >> current;
      if (current != 0) {
        GameObject tmp(DEFAULT_OBJECT_SIZE, 0, {0, 0}, HUMAN_FEMALE);
        if (current == 2 || current == 4) {
        }
        _map.push_back(tmp);
      }
    }
  }
  in.close();
}

Game::~Game() { std::cout << "Game destructorn"; }

My graphics class:

#include "Graphics.h"

Graphics::Graphics(Uint32 windowWidth, Uint32 windowHeight, Uint32 flags)
    : _windowWidth(windowWidth), _windowHeight(windowHeight), _flags(flags) {
  if (initializeSdl()) {
    _window = std::unique_ptr>(
        createWindow(), SDL_DestroyWindow);
    _renderer =
        std::unique_ptr>(
            createRenderer(), SDL_DestroyRenderer);
    _textures = std::unique_ptr<
        std::map,
        std::function *)>>(
        loadAllTextures(), Graphics::destroyAllTextures);
    _baseTile =
        std::unique_ptr>(
            createBaseRect(), destroyRectAndTexture);
    _globalFont = std::unique_ptr>(
        createRegularFont(), destroyFont);
    std::cout << "Graphics createdn";
  }
}

auto Graphics::initializeSdl() -> bool {
  // attempt to initialize graphics and timer system
  if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_TIMER) != 0) {
    std::cout << "error initializing SDL: n" << SDL_GetError();
    return false;
  }
  if (!(IMG_Init(IMG_INIT_PNG) & IMG_INIT_PNG)) {
    std::cout << "could not initialize sdl2_image: n" << IMG_GetError();
    return false;
  }
  if (TTF_Init() == -1) {
    std::cout << "SDL_ttf could not initialize! SDL_ttf Error: n"
              << TTF_GetError();
    return false;
  }
  return true;
}

auto Graphics::createWindow() -> SDL_Window * {
  SDL_Window *window = SDL_CreateWindow(
      "InvasiveSpecies", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED,
      _windowWidth, _windowHeight, _flags);
  if (!window) {
    std::cout << "error creating window: n" << SDL_GetError();
    SDL_Quit();
    return nullptr;
  }
  return window;
}

auto Graphics::createRenderer() -> SDL_Renderer * {
  // create a renderer, which sets up the graphics hardware
  Uint32 render_flags = SDL_RENDERER_ACCELERATED;

  SDL_Renderer *renderer = SDL_CreateRenderer(_window.get(), -1, render_flags);
  if (!renderer) {
    std::cout << "error creating renderer: n" << SDL_GetError();
    quitSdl();
    return nullptr;
  }

  return renderer;
}

auto Graphics::loadTexture(const char *imagePath) -> SDL_Texture * {
  SDL_Texture *texture = IMG_LoadTexture(_renderer.get(), imagePath);
  if (!texture) {
    std::cout << "error creating texturen";
    quitSdl();
    return nullptr;
  }
  return texture;
}

auto Graphics::createRectFromTexture(SDL_Texture *texture) -> RectAndTexture * {
  auto *dest = new SDL_Rect();
  SDL_QueryTexture(texture, nullptr, nullptr, &dest->w, &dest->h);
  auto *rectAndTexture = new RectAndTexture{dest, texture};
  return rectAndTexture;
}

auto Graphics::createBaseRect() -> RectAndTexture * {
  RectAndTexture *baseTile = createRectFromTexture((*_textures)(SOIL));
  return baseTile;
}

auto Graphics::clearRender() -> void { SDL_RenderClear(_renderer.get()); }

auto Graphics::presentRender() -> void { SDL_RenderPresent(_renderer.get()); }

auto Graphics::renderGrid(
    const std::vector> &gameObjectsPositionsMap)
    -> void {
  renderGridBackground();
  renderGameObjects(gameObjectsPositionsMap);
}

auto Graphics::renderGameObjects(
    const std::vector> &gameObjectsPositionsMap)
    -> void {
  for (const auto ¤t : gameObjectsPositionsMap) {
    _baseTile->texture = (*_textures)(current.first);
    _baseTile->rect->x = current.second.x;
    _baseTile->rect->y = current.second.y;
    renderTexture(_baseTile.get());
  }
}

auto Graphics::renderGridBackground() -> void {
  // printf("renderGridBackgroundn");
  int tileWidth = _baseTile->rect->w;
  int tileHeight = _baseTile->rect->h;
  _baseTile->texture = (*_textures)(SOIL);
  for (int i = 0; i < _windowWidth; i += tileWidth) {
    for (int j = 0; j < _windowHeight; j += tileHeight) {
      _baseTile->rect->x = i;
      _baseTile->rect->y = j;
      renderTexture(_baseTile.get());
    }
  }
}

auto Graphics::renderTexture(RectAndTexture *rectAndTexture) -> void {
  SDL_RenderCopy(_renderer.get(), rectAndTexture->texture, nullptr,
                 rectAndTexture->rect);
}

auto Graphics::getImagePathStringByTileType(TileType tileType) -> const char * {
  switch (tileType) {
  case TileType::SOIL:
    return SOIL_IMAGE_PATH;
  case TileType::GRASS:
    return GRASS_IMAGE_PATH;
  case TileType::STONES:
    return STONES_IMAGE_PATH;
  case TileType::HUMAN_MALE:
    return HUMAN_MALE_IMAGE_PATH;
  case TileType::HUMAN_FEMALE:
    return HUMAN_FEMALE_IMAGE_PATH;
  default:
    break;
  }
  return nullptr;
}

auto Graphics::loadAllTextures() -> std::map * {
  auto texturesMap = new std::map();
  for (auto currentTileType : tileTypeVector) {
    (*texturesMap)(currentTileType) =
        loadTexture(getImagePathStringByTileType(currentTileType));
  }
  return texturesMap;
}

auto Graphics::destroyAllTextures(
    std::map *texturesMap) -> void {
  for (auto const &p : *texturesMap) {
    SDL_DestroyTexture(p.second);
  }

  texturesMap->clear();
  delete texturesMap;
  std::cout << "destroyAllTextures donen";
}

auto Graphics::destroyFont(TTF_Font *font) -> void {
  TTF_CloseFont(font);
  std::cout << "destroyFont donen";
}

auto Graphics::destroyRectAndTexture(RectAndTexture *rectAndTexture) -> void {
  delete rectAndTexture->rect;
  //    SDL_DestroyTexture(rectAndTexture->texture); //already freed at
  //    destroyAllTextures()
  delete rectAndTexture;
}

auto Graphics::renderText(const std::string &textureText, SDL_Color textColor,
                          int x, int y) -> void {
  SDL_Surface *textSurface =
      TTF_RenderText_Solid(_globalFont.get(), textureText.c_str(), textColor);
  SDL_Texture *textTexture = nullptr;
  if (textSurface == nullptr) {
    std::cout << "Unable to render text surface! SDL_ttf Error: n",
        TTF_GetError();
  } else {
    // Create texture from surface pixels
    textTexture = SDL_CreateTextureFromSurface(_renderer.get(), textSurface);
    if (textTexture == nullptr) {
      std::cout << "Unable to create texture from rendered text! SDL Error: n"
                << SDL_GetError();
    } else {
      std::unique_ptr>
          baseTile = std::unique_ptr>(
              createRectFromTexture(textTexture), destroyRectAndTexture);
      baseTile->rect->x = x;
      baseTile->rect->y = y;
      renderTexture(baseTile.get());
      baseTile.reset();
      SDL_DestroyTexture(textTexture);
    }

    // Get rid of old surface
    SDL_FreeSurface(textSurface);
  }
}

auto Graphics::getFontFromFile(const char *file, int ptsize) -> TTF_Font * {
  TTF_Font *gFont = TTF_OpenFont(file, ptsize);

  if (gFont == nullptr) {
    std::cout << "Failed to load lazy font! SDL_ttf Error: n"
              << TTF_GetError();
  }

  return gFont;
}

auto Graphics::createRegularFont() -> TTF_Font * {
  return getFontFromFile(FONT_PATH, FONT_SIZE);
}

auto Graphics::quitSdl() -> void {
  // these must be here or else they will get called after SDL_Quit()
  _globalFont.reset();
  _textures.reset();
  _baseTile.reset();
  _renderer.reset();
  _window.reset();
  TTF_Quit();
  IMG_Quit();
  SDL_Quit();
}

Graphics::~Graphics() {
  std::cout << "Graphics destructorn";
  quitSdl();
}

The resources for the game contain .png and .tff files with a total size of approximately 34KiB.

The rest of the code is in the My GitHub repository

Is the use of approximately 50 MB of RAM normal at runtime under these conditions?

ShineServers.Com | Quadcore, 8GB RAM, 1TB HDD, Multiple IPv4 from $ 45 / m (30% recurrence disabled) | Proxies123.com

Shine Servers LLP is a private professional web hosting company based in India founded in 2010. Shine Servers offers the most comprehensive range of secure, fully protected and private web hosting services in the world. All shared, VPS and dedicated servers are located in SmartDC Datacenter in the Netherlands. All equipment, including Shine Servers LLP servers, is placed in a private corridor within the SmartDC. Our network consists of the best connections such as AMS-IX, DECIX, L-INX, Tinet, NTT, Telia and Level3. Shine Servers manages its own global IPv4 / IPv6 network (AS202905). This premium network consists of multiple large and small transit providers and is linked to the largest Internet exchanges in Europe. This combination of different providers and Internet exchanges guarantees maximum performance. Low latency and availability are the essence of Shine's premium server network.

We understand that every minute of inactivity is too much.

Shine Servers now offers the following server configurations at reasonable prices for this community! There has never been a better time to visit Shine Servers.

Pay mode: PayPal, credit / debit cards, Bitcoin, Altcoins and Payza

Proxies123.com Special Offer! Get a 30% discount on your invoice!
Promo Code: 30WJDS2020

Here are some choice settings to consider:

Intel Quadcore X3440 for $ 65 USD / m
8GB DDR3 ECC RAM
1 TB SATAII
Dedicated 1 Gbit port
35TB bandwidth
Location: France
2 IPv4
Activation time: 5 – 12 hours (except weekends)

FULLY MANAGED

Click to order

Intel Xeon E3 – 1260L for $ 85 USD / m
8GB DDR3 ECC RAM
250X2 GB SATAII
Dedicated 1 Gbit port
50TB bandwidth
Location: France
4 IPv4
Activation time: 5 – 12 hours (except weekends)

FULLY MANAGED

Click to order

Intel Xeon E3-1246v3 for $ 130 USD / m
16GB DDR3 ECC RAM
2 TB SATAII
2 dedicated 1 Gbit ports
100TB bandwidth
Location: France
6 IPv4
Activation time: 5 – 12 hours (except weekends)

FULLY MANAGED

Click to order

Intel Xeon E3-1230 for $ 135 USD / m
32 GB of RAM
240GB SSD + 2TB SATA
Dedicated 1 Gbit port
35TB bandwidth
Location: France
2 IPv4
Activation time: 5 – 12 hours (except weekends)

FULLY MANAGED

Click to order

Intel Xeon E3-1245v6 for $ 140 USD / m
32GB DDR3 ECC RAM
512 GB SSD + 1 TB SATA
Dedicated 1 Gbit port
35TB bandwidth
Location: France
16 IPv4
Activation time: 5 – 12 hours (except weekends)

FULLY MANAGED

Click to order

Intel 2x E5-2650 for $ 590 USD / m
32 GB of RAM
512 GB SSD
Dedicated 10 Gbit port
2 Gbps unmeasured bandwidth
Location: France
Activation time: 5 – 12 hours (except weekends)

FULLY MANAGED

Click to order

Still nothing ?
Can't see a plan that meets your needs? Do not worry
We can offer you a customized server to suit your needs.
Contact us with your requirements and we will send you a quote within 12 hours!

It is easy! Convinced? time to contact us:
Send us an email: (protected email)
Contact directly through the contact form:
http://www.shineservers.com/contact.php
Websites:
www.shineservers.com || www.shineservers.in

Linux: What size swap partition will allow a Mint 19.3 installation with 64G RAM to hibernate?

This same basic question is asked in How do I enable hibernation in Linux Mint 18.3 ?, but the question asked only says how much space is desirable for a 4Gi installation, and conflicting opinions address whether, on the one hand, you need Enough space to handle swapping needs and you also need space for a stored copy of the memory contents, while another opinion is that you only need space for a stored copy of the memory contents.

I have had a hard time hibernating with recent versions of Linux Mint; On 19.3, I never got a system with 16G of RAM to hibernate, and that includes allocating 64G to swap space.

How can I find out what space is suitable for hibernation on a machine with 64G RAM?

Thank you,

ServersBase.Com ⚡️⚡ Fully Managed Dedicated Servers – 4 IPv4 – i7 or similar, 4GB RAM, 1TB HDD | Proxies123.com

We offer a very broad line of dedicated servers from basic to sophisticated with the latest technologies. All of our dedicated servers are rated above to suit any business need. Our dedicated servers are managed so you don't have to worry about running your dedicated servers or solving any problems.

Let's go directly to our offers:

Dedicated servers

Intel Core i7 950 for $ 163.00 / m
4 GB of dedicated RAM
1TB of disk space
10TB bandwidth
Dedicated 1 Gbps port
4 dedicated IPv4
DDoS protection of up to 5 Gb / s included
Free reinstalls of the operating system
24/7 technical support
<>

Intel Core i3-2100 for $ 170.00 / m
8 GB of dedicated RAM
1TB of disk space
10TB bandwidth
Dedicated 1 Gbps port
6 dedicated IP
Up to 5Gb / s DDoS Portection Included
Free reinstalls of the operating system
24/7 technical support
<>

2x Intel Xeon E5620 2.40GHz for $ 189.00 / m
16 GB of dedicated RAM
2 TB of disk space
50TB bandwidth
Dedicated 1 Gbps port
10 dedicated IP
Up to 5Gb / s DDoS Portection Included
Free reinstalls of the operating system
24/7 technical support
<>

2x Intel Xeon E5-2620v4 for $ 290.00 / m
32 GB of dedicated RAM
2 TB of disk space
100TB bandwidth
Dedicated 1 Gbps port
16 dedicated IP
Up to 20Gb / s DDoS Portection Included
Free reinstalls of the operating system
24/7 technical support
<>

Payment methods:
PayPal, Bitcoins and AltCoins

Wire transfer:
We accept bank transfers from Indian users [just send the ticket for details]

More questions?
Explore our website: www.serversbase.com
Contact our sales department.

Windows 7 – Daniel2 Codec – not enough RAM after import

I have win7, 10GB of RAM, 256GBssd and i7 CPU

When I edit videos, I first convert everything H.264 to Daniel2 format. This is a special codec that allows smooth editing by decreasing CPU weight. However, the output video files became 4 times as large, so once I import Premiere Pro as 200GB of video footage, the system displays an error (not enough memory).

I have win7, can the update for win10 solve the problem?

if not

Will replacing 1000gb ssd solve the problem?

Thank you!

apache 2.2 – Download PHP file uses high CPU and RAM

My Apache server statistics

RAM 4GB
CPU 2-core
PHP 7.3
Centos 7 64bit

File upload settings in Php.ini

max_execution_time = 300;
max_input_time = 60 ;
memory_limit = 1000M ;
post_max_size = 2000M
upload_max_filesize = 1500M

I use this PHP code to download files.

   File Not Found");
        }
        $this->size = filesize($file);
        $this->file = fopen($file, "r");
        $this->boundary = md5($file);
        $this->delay = $delay;
        $this->name = basename($file);
    }
    public function process() {
        $ranges = NULL;
        $t = 0;
        if ($_SERVER('REQUEST_METHOD') == 'GET' && isset($_SERVER('HTTP_RANGE')) && $range = stristr(trim($_SERVER('HTTP_RANGE')), 'bytes=')) {
            $range = substr($range, 6);
            $ranges = explode(',', $range);
            $t = count($ranges);
        }
        header("Accept-Ranges: bytes");
        header("Content-Type: application/octet-stream");
        header("Content-Transfer-Encoding: binary");
        header(sprintf('Content-Disposition: attachment; filename="%s"', $this->name));
        if ($t > 0) {
            header("HTTP/1.1 206 Partial content");
            $t === 1 ? $this->pushSingle($range) : $this->pushMulti($ranges);
        } else {
            header("Content-Length: " . $this->size);
            $this->readFile();
        }
        flush();
    }
    private function pushSingle($range) {
        $start = $end = 0;
        $this->getRange($range, $start, $end);
        header("Content-Length: " . ($end - $start + 1));
        header(sprintf("Content-Range: bytes %d-%d/%d", $start, $end, $this->size));
        fseek($this->file, $start);
        $this->readBuffer($end - $start + 1);
        $this->readFile();
    }
    private function pushMulti($ranges) {
        $length = $start = $end = 0;
        $output = "";
        $tl = "Content-type: application/octet-streamrn";
        $formatRange = "Content-range: bytes %d-%d/%drnrn";
        foreach ( $ranges as $range ) {
            $this->getRange($range, $start, $end);
            $length += strlen("rn--$this->boundaryrn");
            $length += strlen($tl);
            $length += strlen(sprintf($formatRange, $start, $end, $this->size));
            $length += $end - $start + 1;
        }
        $length += strlen("rn--$this->boundary--rn");
        header("Content-Length: $length");
        header("Content-Type: multipart/x-byteranges; boundary=$this->boundary");
        foreach ( $ranges as $range ) {
            $this->getRange($range, $start, $end);
            echo "rn--$this->boundaryrn";
            echo $tl;
            echo sprintf($formatRange, $start, $end, $this->size);
            fseek($this->file, $start);
            $this->readBuffer($end - $start + 1);
        }
        echo "rn--$this->boundary--rn";
    }
    private function getRange($range, &$start, &$end) {
        list($start, $end) = explode('-', $range);
        $fileSize = $this->size;
        if ($start == '') {
            $tmp = $end;
            $end = $fileSize - 1;
            $start = $fileSize - $tmp;
            if ($start < 0)
                $start = 0;
        } else {
            if ($end == '' || $end > $fileSize - 1)
                $end = $fileSize - 1;
        }
        if ($start > $end) {
            header("Status: 416 Requested range not satisfiable");
            header("Content-Range: */" . $fileSize);
            exit();
        }
        return array(
                $start,
                $end
        );
    }
    private function readFile() {
        while ( ! feof($this->file) ) {
            echo fgets($this->file);
            flush();
            usleep($this->delay);
        }
    }
    private function readBuffer($bytes, $size = 1024) {
        $bytesLeft = $bytes;
        while ( $bytesLeft > 0 && ! feof($this->file) ) {
            $bytesLeft > $size ? $bytesRead = $size : $bytesRead = $bytesLeft;
            $bytesLeft -= $bytesRead;
            echo fread($this->file, $bytesRead);
            flush();
            usleep($this->delay);
        }
    }
}
$file = '/home/file.zip';
set_time_limit(0);
$download = new ResumeDownload($file, 50000); //delay about in microsecs 
$download->process();

it is working perfectly but the problem is that. when several files download our RAM and CPU 100%.
Any solution to solve it.

Windows – Intel (R) Xeon (R) CPU E-4660 v4 @ 2.20GHz 2.19GHz (4 processors) 24GB RAM

enter the image description here

Hello experts

I am the server (Intel (R) Xeon (R) CPU E-4660 v4 @ 2.20GHz 2.19GHz 4 processors) SQL Server has been installed and memory is being used up to 93%, I have also attached an image for reference. Can anyone help to solve this?

Cheers,
Akshay Sonayallu.

ServersBase.Com ⚡️⚡ Fully Managed Dedicated Servers – 4 IPv4 – i7 or similar, 4GB RAM, 1TB HDD | Proxies123.com

We offer a very broad line of dedicated servers from basic to sophisticated with the latest technologies. All of our dedicated servers are rated above to suit any business need. Our dedicated servers are managed so you don't have to worry about running your dedicated servers or solving any problems.

Let's go directly to our offers:

Dedicated servers

Intel Core i7 950 for $ 163.00 / m
4 GB of dedicated RAM
1TB of disk space
10TB bandwidth
Dedicated 1 Gbps port
4 dedicated IPv4
Up to 5Gb / s DDoS Portection Included
Free reinstalls of the operating system
24/7 technical support
<>

Intel Core i3-2100 for $ 170.00 / m
8 GB of dedicated RAM
1TB of disk space
10TB bandwidth
Dedicated 1 Gbps port
6 dedicated IP
Up to 5Gb / s DDoS Portection Included
Free reinstalls of the operating system
24/7 technical support
<>

2x Intel Xeon E5620 2.40GHz for $ 189.00 / m
16 GB of dedicated RAM
2 TB of disk space
50TB bandwidth
Dedicated 1 Gbps port
10 dedicated IP
Up to 5Gb / s DDoS Portection Included
Free reinstalls of the operating system
24/7 technical support
<>

2x Intel Xeon E5-2620v4 for $ 290.00 / m
32 GB of dedicated RAM
2 TB of disk space
100TB bandwidth
Dedicated 1 Gbps port
16 dedicated IP
Up to 20Gb / s DDoS Portection Included
Free reinstalls of the operating system
24/7 technical support
<>

Payment methods:
PayPal, Bitcoins and AltCoins

Wire transfer:
We accept bank transfers from Indian users [just send the ticket for details]

More questions?
Explore our website: www.serversbase.com
Contact our sales department.

linux – Ubuntu 18.04 Not all RAM used but 2 / 4GB swap used,

So I've been working hard to optimize my Ubuntu Server 18.04 running LEMP with everything up-to-date, including the latest kernel updates, and I've noticed some slight delays in SSH responsiveness.

My idea points towards the use of RAM and SWAP
https://imgur.com/a/cRbnv8r

At the link above are free -m, htop and vmstat screenshots.
I'm not completely sure what's going on here, not all RAM is used, but is more than 2GB of SWAP used? …

I see 2 possibilities here:

  1. In fact, I am running out of RAM and Ubuntu is using a lot of this 2GB swap and keeping a small amount of memory free for important tasks.
  2. Actually, I am not using much ram and ubuntu is only using SWAP to improve performance.

However, I have doubts and would prefer that someone could point me to the correct understanding here.

I also set swappiness to 5 and vfs_cache_pressure to 50, to use as little SWAP as possible, quite some time ago.

Could this situation be causing my SSH to be slow?
former:

enter password on my local PC in terminal: I can type as fast as possible and it will work

Entering the password on the remote server via SSH – I can't type the password as fast as I can as it will prompt me for an invalid password.

I'm using shift while entering password, but it shouldn't make me enter invalid password when SSH is slow.