[RIJEŠENO] Brza zauzetost RAM memorije

Novi ste u svijetu Linuxa? Imate hrpu početničkih pitanja?

Moderator/ica: Moderatori/ce

Pravila foruma
PRAVILA ZA NOVE KORISNIKE LINUXA!
Prije otvaranja bilo kakve diskusije svaki novi korisnik u svijetu Linuxa obavezan je učiniti sljedeće korake:
Pročitati ove tekstove iz naše Wikipedije:
- Sve uvodne tekstove Linuxa za početnike (njih 5)
- Sve što trebate znati o radu s diskovima
- Pročitati ovu temu za početnike
- Pokušati pronaći riješenje problema u Enciklopediji znanja

Nakon toga korisnik smije otvoriti temu s naslovom svog problema uz obaveznu naznaku Linux distribucije koju koristi u formi:
[Linux distribucija, broj verzije, grafičko okruženje]: Naslov problema
U prvom postu korisnik obavezno mora odgovoriti na ova pitanja:
- Da li ima instalirane Windowse?
- Što ga je motiviralo na instaliranje i korištenje Linux distribucije?
- Obavezno je potrebno navesti specifikacije hardvera (Ime Laptopa, tip procesora, grafičke i mrežne kartice, količina RAM-a i diska)

Bez učinjenih ovih prvih koraka, na teme se neće odgovarati i one će biti izbrisane s foruma!
Odgovori
Avatar
Tribanj
Postovi: 109
Pridružen/a: 25 kol 2024, 20:38
Spol: M
OS: Linux Mint 22.1 Cinnamon

[RIJEŠENO] Brza zauzetost RAM memorije

Post Postao/la Tribanj »

U zadnje vrijeme imam problem s brzom zauzetošću RAM memorije. U Terminalu sam koristio komandu 'top' i vidljivo je da Conky brzo zauzima RAM memoriju. Conky koristim više od pola godine i nikada do zadnjih nekoliko dana nisam imao problema s RAM memorijom. Kada zauzetost bude oko 60% računalo znatno uspori rad.

Kada u Terminalu idem komandom

Kod: Označi sve

free -m
dobijem ovaj rezultat.

slika

Na 58% RAM memorije računalo je počelo usporavati.

System Settings:

https://dpaste.com/4VNLMA6K8

slika

Nakon što restartam računalo ili Conky, računalo radi u redu i RAM memorija je između 15 i 20%.
Zadnja izmjena: Tribanj, dana/u 08 svi 2025, 18:44, ukupno mijenjano 1 put.
Linux Mint 22.1 "Xia" Cinnamon / Samsung Galaxy A55 5G

MB: ASRock B550M Pro4 / CPU: AMD Ryzen 5 PRO 4650G / GPU int. in CPU Radeon RX Vega 7 Renoir / RAM Memory: Corsair Vengeance LPX 16GB
Avatar
Tribanj
Postovi: 109
Pridružen/a: 25 kol 2024, 20:38
Spol: M
OS: Linux Mint 22.1 Cinnamon

Re: Brza zauzetost RAM memorije

Post Postao/la Tribanj »

Svi junaci nikom ponikoše i u crnu zemlju pogledaše. Samo nije mali Marijane.
Linux Mint 22.1 "Xia" Cinnamon / Samsung Galaxy A55 5G

MB: ASRock B550M Pro4 / CPU: AMD Ryzen 5 PRO 4650G / GPU int. in CPU Radeon RX Vega 7 Renoir / RAM Memory: Corsair Vengeance LPX 16GB
Avatar
NoMaam
Postovi: 1048
Pridružen/a: 30 ruj 2013, 12:12
Spol: M
OS: Kubuntu 24.04

Re: Brza zauzetost RAM memorije

Post Postao/la NoMaam »

Tribanj je napisao/la: 01 svi 2025, 16:39 Svi junaci nikom ponikoše i u crnu zemlju pogledaše. Samo nije mali Marijane.
A što reči.
Po gornjim slikama se vidi da ti je sustav otišao u swap. Cpu je na 100%. Ako sumljaš na conky obriši ga pa vidi.
Ja sam na starijim verzijama Xubunta imao problem da ako mi sustav ode u swap, sve uspori i to grozno uspori. Znao sam na silu gasiti komp.
Taj problem se javljao najviše kod kopiranja ali nekad i onako, jel mu je došlo pface
Novije verzije nemaju taj problem ali provjeri kod sebe(Linux-Mint) da se nije nešto "uvuklo" kod neke nadogradnje, naravno ako je prije sve bilo u redu.

Pozz
Ok i što sad?
Avatar
Tribanj
Postovi: 109
Pridružen/a: 25 kol 2024, 20:38
Spol: M
OS: Linux Mint 22.1 Cinnamon

Re: Brza zauzetost RAM memorije

Post Postao/la Tribanj »

Hvala. E da ja znam to provjeriti. Imao sam puno, puno Conky vidgeta i sve je radilo u redu. Sada imam puno manje vidgeta i problem. Je li problem u tome što imam manje od 2 GB swapa? Inače imam 16 GB RAM-a. Kada restartam Conky Manager sve opet radi u redu. Znatno sporije pođe raditi na 58% RAM memorije.
Linux Mint 22.1 "Xia" Cinnamon / Samsung Galaxy A55 5G

MB: ASRock B550M Pro4 / CPU: AMD Ryzen 5 PRO 4650G / GPU int. in CPU Radeon RX Vega 7 Renoir / RAM Memory: Corsair Vengeance LPX 16GB
Avatar
Vl@do
Moderator
Postovi: 6209
Pridružen/a: 28 lis 2011, 23:31
Spol: M
OS: Arch KDE Plazma
Lokacija: Zagreb
Kontakt:

Re: Brza zauzetost RAM memorije

Post Postao/la Vl@do »

Tribanj je napisao/la: 05 svi 2025, 07:50 Je li problem u tome što imam manje od 2 GB swapa? Inače imam 16 GB RAM-a.
Na 16 GB RAM-a ti ne treba Swap. Ja imam 8 GB RAM-a i 0 GB Swapa i nikakvih problema.
Doduše, moj Arch bi radio uredno i sa puno manje RAM-a (možda čak i bez RAM-a :lulz).
Moj pogled na sve to.
Glavna snaga GNU/Linuxa nije besplatnost, nego SLOBODA.
http://wiki.open.hr/wiki/Linux_CLI_naredbe
Avatar
Tribanj
Postovi: 109
Pridružen/a: 25 kol 2024, 20:38
Spol: M
OS: Linux Mint 22.1 Cinnamon

Re: Brza zauzetost RAM memorije

Post Postao/la Tribanj »

Vl@do je napisao/la: 05 svi 2025, 16:56
Tribanj je napisao/la: 05 svi 2025, 07:50 Je li problem u tome što imam manje od 2 GB swapa? Inače imam 16 GB RAM-a.
Na 16 GB RAM-a ti ne treba Swap. Ja imam 8 GB RAM-a i 0 GB Swapa i nikakvih problema.
Doduše, moj Arch bi radio uredno i sa puno manje RAM-a (možda čak i bez RAM-a :lulz).
Conky koristim već nekih 8 do 9 mjeseci, a ovi problemi s RAM-om su se pojavili nedavno. Sve radi u redu do 58% zauzetosti RAM memorije. Postoji li neki način za istražiti uzrok? Ako da, kako?
Linux Mint 22.1 "Xia" Cinnamon / Samsung Galaxy A55 5G

MB: ASRock B550M Pro4 / CPU: AMD Ryzen 5 PRO 4650G / GPU int. in CPU Radeon RX Vega 7 Renoir / RAM Memory: Corsair Vengeance LPX 16GB
Avatar
Cooleech
Moderator
Postovi: 6953
Pridružen/a: 13 stu 2010, 21:12
Spol: M
OS: Arch Linux KDE
Lokacija: /hrvatska/solin/

Re: Brza zauzetost RAM memorije

Post Postao/la Cooleech »

Punjenje RAM-a, bez nekog valjanog razloga, obično je uzrokovano "curenjem" memorije, dakle, možda taj Conky ili neki od ostalih điđa-miđa ne radi kako bi trebao i to dovodi do nepotrebnog zapunjavanja RAM-a. Nešto pametnije od toga ne mogu ti reći osim da provjeriš u System Monitoru koja ti aplikacija "jede" previše RAM-a.
Arch Linux Install Script (BIG update, BETA verzija)
Vl@do je napisao/la:Arch imaš upravo zato da uštediš na vremenu. Nemaš nikakvih problema s instalacijama, kompajliranjem i ostalim. Imaš jednostavno funkcionalan i stabilan, uvijek najsvježiji OS, a osim toga je sexy i cool do neba.
I've seen some idiots back in my time, but you man... you're special!
Avatar
Tribanj
Postovi: 109
Pridružen/a: 25 kol 2024, 20:38
Spol: M
OS: Linux Mint 22.1 Cinnamon

Re: Brza zauzetost RAM memorije

Post Postao/la Tribanj »

Cooleech je napisao/la: 06 svi 2025, 14:38 Punjenje RAM-a, bez nekog valjanog razloga, obično je uzrokovano "curenjem" memorije, dakle, možda taj Conky ili neki od ostalih điđa-miđa ne radi kako bi trebao i to dovodi do nepotrebnog zapunjavanja RAM-a. Nešto pametnije od toga ne mogu ti reći osim da provjeriš u System Monitoru koja ti aplikacija "jede" previše RAM-a.
Isključio sam neki set Conky widgeta i već oko 4 sata radi solidnije. Eksperimentirat ću neko vrijeme i vidjeti koji Conky widget stvara probleme.
Linux Mint 22.1 "Xia" Cinnamon / Samsung Galaxy A55 5G

MB: ASRock B550M Pro4 / CPU: AMD Ryzen 5 PRO 4650G / GPU int. in CPU Radeon RX Vega 7 Renoir / RAM Memory: Corsair Vengeance LPX 16GB
Avatar
Tribanj
Postovi: 109
Pridružen/a: 25 kol 2024, 20:38
Spol: M
OS: Linux Mint 22.1 Cinnamon

Re: Brza zauzetost RAM memorije

Post Postao/la Tribanj »

Mislim da sam pronašao uzrok brzoga zauzeća RAM memorije. Radi se o 'white red gauges'.

white4

Kod: Označi sve

conky.config = {
  --
  -- _____________________________________
  -- HISTORY:
  --
  --   10/25/16 - mattz - V1.0 original (for release)
  --   12/01/16 - mattz - V1.1 added stockticker, misc improvements
  --   01/18/17 - mattz - V2.1 added 'analog' gauges
  --   07/22/17 - mattz - V2.2 added alarms for gauges
  --   07/07/24 - zcot  - V2.3 the butcher
  --
  -- _____________________________________
  -- NOTES:
  --
  --   colors chart...
  --     http://www.graphviz.org/doc/info/colors.html
  --    or...
  --     cat /usr/share/X11/rgb.txt
  --
  --   Gauges:
  --    syntax: label(no.spaces) unit measure(or conky_parse) max(value) warn(value) xr(rowpos) yc(columnpos)
  --      unit is such as °C or % ... if none is desired (leave blank), enter 'nil' (no quotes)
  --      if no warn indication is desired, make value of warn parameter equal value of max
  -- _____________________________________

  -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  alignment = 'bottom_right',
  background = false,   -- set to yes if you want Conky to be forked in the background
  border_width = 1,
  -- --- change colors as needed ---
  color1 = 'skyblue4',      -- text/data
  color2 = 'dodgerblue3',   -- labels
  color3 = '1874cd',  -- highlights
  color4 = 'gray10',        -- bar charts
  color5 = 'gray17',        -- graph borders
  color6 = 'yellow1',       -- warning (hi cpu temp)
  color7 = 'green3',        -- stock ticker "up"
  color8 = 'red3',          -- stock ticker "down"
  -- -------------------------------
  cpu_avg_samples = 1,
  default_color = 'white',
  default_gauge_width = 25,
  default_gauge_height = 25,
  default_graph_width = 0,
  default_graph_height = 25,
  default_outline_color = 'white',
  default_shade_color = 'white',
  double_buffer = true,
  draw_borders = false,
  draw_graph_borders = true,
  draw_outline = false,
  draw_shades = false,
  extra_newline = false,
  font = 'Droid Sans:size=14',
  gap_x = 10,
  gap_y = 50,
  maximum_width = 555,
  minimum_width = 555,
  minimum_height = 190,
  no_buffers = true,
  out_to_console = false,
  out_to_stderr = false,
  own_window = true,
  own_window_class = 'Conky',
  own_window_colour = '000000',
  own_window_argb_visual = true,
  own_window_argb_value = 40,
  own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
  own_window_transparent = true,   -- should be set to no
  own_window_type = 'normal',       -- if enabled, does not move according to taskbar height
  out_to_console = false,
  -- pad_percents = 2,              -- use_spacer must be enabled (not using, throws off other numbers)
  short_units = true,
  show_graph_scale = false,
  show_graph_range = false,
  stippled_borders = 0,
  temperature_unit = 'celsius',

  cpu_avg_samples = 10,
  update_interval = 0.1,
  net_avg_samples = 1,

  uppercase = false,
  use_spacer = 'none',              -- right, left , none
  use_xft = true,

  -- --- Lua Load all ---
  lua_load = './white4.lua',
  -- --------------------

};

conky.text = [[
# ---------------------------
# ----- CPU % USE -----------
# ---------------------------
 
${lua conky_gauge CPU1 % ${cpu cpu1} 100 46 50}\
${lua conky_gauge CPU2 % ${cpu cpu2} 100 140 50}\
${lua conky_gauge CPU3 % ${cpu cpu3} 100 234 50}\
${lua conky_gauge CPU4 % ${cpu cpu4} 100 328 50}\
${lua conky_gauge CPU5 % ${cpu cpu5} 100 422 50}\
${lua conky_gauge CPU6 % ${cpu cpu6} 100 516 50}\
${lua conky_gauge CPU7 % ${cpu cpu7} 100 46 152}\
${lua conky_gauge CPU8 % ${cpu cpu8} 100 140 152}\
${lua conky_gauge CPU9 % ${cpu cpu9} 100 234 152}\
${lua conky_gauge CPU10 % ${cpu cpu10} 100 328 152}\
${lua conky_gauge CPU11 % ${cpu cpu11} 100 422 152}\
${lua conky_gauge CPU12 % ${cpu cpu12} 100 516 152}\
]]
white4.lua

Kod: Označi sve

--[[
  lua script to...
    - draw 'analog' gauges

  --------------------------------------------------
  Acknowledgments... -------------------------------
    --- analog clock & rings ---
    based on code from...
    Clock Rings by Linux Mint (2011) reEdited by despot77

  --------------------------------------------------
  Notes: -------------------------------------------

    - To call this script in Conky, add the following lines in conky.rc (above TEXT):
      lua_load = 'gauge2.lua',

]]

---------------------------------------
----- main setup & initialization -----
---------------------------------------

require 'cairo'

----------------------------------------------------
------- functions ----------------------------------
----------------------------------------------------

-- ==================================================
function conky_gauge(p_label, p_unit, p_measure, p_max, p_xr, p_yc)
--[[ NOTES:
  -- "label" is the label/name for this gauge
  -- "measure" is the type of stat to display; you can choose from 'cpu', 'memperc'... in Conky you would write ${cpu cpu0}
  -- "max" is the maximum value of gauge
  -- "xr" & "yc" are the x/row y/col coordinates for center of gauge
  -- for colors: regular rgb color prefixed with 0x as in 0x######
--]]

  local cs = cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height)
  local cr = cairo_create(cs)
  cairo_surface_destroy(cs)

  --- items common to all rings ------------------
  local bg_color = 0xffffff
  local bg_alpha = 0.1
  local ok_color = 0xffffff                     -- color for ok guide/arc --
  local ok_alpha = 1.0
  local needle_color = 0x93cdea                -- color of indicator needle ---
  local needle_alpha = 1.0
  local label_color = 0x93cdea                 -- color of label --
  local label_alpha = 1.0
  local val_color = 0xffffff                    -- color of current value --
  local val_alpha = 1.0
  local bg_radius = 35                          -- gauge background starts here --
  local guide_radius = 0                       -- guide is the colored line (showing ok zones) starts here --
  local val_radius = 36                         -- value indicator arc... generally between bg_radius & guide_radius --
  local needle_radius = 10                      -- bottom of needle rests here --
  local bg_width = 8                            -- width/thickness of background arc --
  local guide_width = 0                         -- width/thickness of guide arc --
  local val_width = 8                           -- width/thickness of value indicator arc --
  local needle_width = 35                       -- "length" of needle --
  local needle_thickness = 2                    -- thickness of needle for visibility --
  local start_angle = -220                      -- note: 0 is at "3 o'clock"... example: to start at top/12 o'clock use -90 --
  local end_angle = 45
  local angle_0 = (start_angle) * (math.pi / 180)
  local angle_f = (end_angle) * (math.pi / 180)
  local graduation_radius = 38          -- centered on the ring
  local graduation_thickness = 8
  local graduation_mark_thickness = 1   -- thickness of the mark
  local graduation_unit_angle = 13.75      -- draw a mark every 27 degree
  local graduation_fg_colour = 0xFFFFFF
  local graduation_fg_alpha = 0.3
  local font = "Droid Sans:bold"
  local font_size = 14
  local font_h = font_size                      -- normally same as font size, but adjust as needed --
  local font_w = 7                              -- adjust this for font used --
  local font_slant = CAIRO_FONT_SLANT_NORMAL    -- mono font does not have SLANT --
  local font_face = CAIRO_FONT_WEIGHT_BOLD    -- mono font does not have BOLD  --
  cairo_select_font_face(cr, font, font_slant, font_face)
  cairo_set_font_size(cr, font_size)
  --- --------------------------------------------

  --- individual ring items ----------------------
  local label = p_label
  local unit = p_unit
  if unit == "nil" then unit = "" end
  local measure = p_measure
  local max = p_max
  local xr = p_xr
  local yc = p_yc

  local str = conky_parse(measure)
  local value = tonumber(str)
  local pct = value / max
  local pct_needle = (value / max) - needle_thickness

  local t_arc = pct * (angle_f - angle_0)
  local t_arc_needle = pct_needle * (angle_f - angle_0)
  -- ---------------------------------------------

  --- draw background ring ---
  cairo_arc(cr, xr, yc, bg_radius, angle_0, angle_f)
  cairo_set_source_rgba(cr, rgb_to_r_g_b(bg_color, bg_alpha))
  cairo_set_line_width(cr, bg_width)
  cairo_stroke(cr)

  -- Draw graduation marks
  cairo_set_source_rgba(cr, rgb_to_r_g_b(graduation_fg_colour, graduation_fg_alpha))
  cairo_set_line_width(cr, graduation_mark_thickness)

  for angle = start_angle, end_angle, graduation_unit_angle do
    local angle_rad = angle * (math.pi / 180)
    local x1 = xr + (graduation_radius - graduation_thickness) * math.cos(angle_rad)
    local y1 = yc + (graduation_radius - graduation_thickness) * math.sin(angle_rad)
    local x2 = xr + graduation_radius * math.cos(angle_rad)
    local y2 = yc + graduation_radius * math.sin(angle_rad)

    cairo_move_to(cr, x1, y1)
    cairo_line_to(cr, x2, y2)
    cairo_stroke(cr)
  end

  --- draw OK area ring ---
  cairo_arc(cr, xr, yc, guide_radius, angle_0, angle_0 + t_arc)
  cairo_set_source_rgba(cr, rgb_to_r_g_b(ok_color, ok_alpha))
  cairo_set_line_width(cr, guide_width)
  cairo_stroke(cr)

  --- draw value indicator ring ---
  cairo_set_line_width(cr, val_width)
  cairo_arc(cr, xr, yc, val_radius, angle_0, angle_0 + t_arc)
  cairo_set_source_rgba(cr, rgb_to_r_g_b(ok_color, ok_alpha))
  cairo_stroke(cr)

  --- draw indicator needle ---
  cairo_move_to(cr, xr, yc)
  cairo_rel_line_to(cr, needle_width * math.cos(angle_0 + t_arc), needle_width * math.sin(angle_0 + t_arc))
  cairo_set_line_width(cr, needle_thickness)
  cairo_set_source_rgba(cr, rgb_to_r_g_b(needle_color, needle_alpha))
  cairo_stroke(cr)

  --- display label text ---
  cairo_set_source_rgba(cr, rgb_to_r_g_b(label_color, label_alpha))

  local text_label = label
  if text_label == "!" then text_label = "" end  --<< added by koentje, empty out textfield
  text_label_pos = (string.len(text_label) * font_w) / 2
  cairo_move_to(cr, xr - text_label_pos - 8, yc + 32)  -- Moved label 24 pixels down
  cairo_show_text(cr, text_label)
  cairo_stroke(cr)

  --- display value text ---
  cairo_set_source_rgba(cr, rgb_to_r_g_b(val_color, val_alpha))

  local text_value = value .. unit
  text_value_pos = (string.len(text_value) * font_w) / 2
  cairo_move_to(cr, xr - text_value_pos - 8, yc + font_h)
  cairo_show_text(cr, text_value)
  cairo_stroke(cr)

end

--- --------------------------------------------------------------
function rgb_to_r_g_b(color, alpha)
  return ((color / 0x10000) % 0x100) / 255., ((color / 0x100) % 0x100) / 255., (color % 0x100) / 255., alpha
end
--- --------------------------------------------------------------

function conky_main()

  if conky_window == nil then return end

  conky_gauge("FREQ ", "GHz", "${freq_g 8}", "10.0", 625, 374)
end


--- --------------------------------------------------------------
Linux Mint 22.1 "Xia" Cinnamon / Samsung Galaxy A55 5G

MB: ASRock B550M Pro4 / CPU: AMD Ryzen 5 PRO 4650G / GPU int. in CPU Radeon RX Vega 7 Renoir / RAM Memory: Corsair Vengeance LPX 16GB
Avatar
Tribanj
Postovi: 109
Pridružen/a: 25 kol 2024, 20:38
Spol: M
OS: Linux Mint 22.1 Cinnamon

Re: Brza zauzetost RAM memorije

Post Postao/la Tribanj »

Problem riješen. U white4.lua unio sam ove izmjene.

Kod: Označi sve

...
  cairo_move_to(cr, xr - text_value_pos - 8, yc + font_h)
  cairo_show_text(cr, text_value)
  cairo_stroke(cr)
  cairo_destroy(cr)

end

--- --------------------------------------------------------------
function rgb_to_r_g_b(color, alpha)
  return ((color / 0x10000) % 0x100) / 255., ((color / 0x100) % 0x100) / 255., (color % 0x100) / 255., alpha
end
--- --------------------------------------------------------------
Linux Mint 22.1 "Xia" Cinnamon / Samsung Galaxy A55 5G

MB: ASRock B550M Pro4 / CPU: AMD Ryzen 5 PRO 4650G / GPU int. in CPU Radeon RX Vega 7 Renoir / RAM Memory: Corsair Vengeance LPX 16GB
Odgovori