Home
last modified time | relevance | path

Searched refs:watermarks (Results 1 – 24 of 24) sorted by relevance

/linux/mm/damon/
H A Dsysfs-schemes.c813 struct damon_sysfs_watermarks *watermarks = kmalloc( in damon_sysfs_watermarks_alloc() local
814 sizeof(*watermarks), GFP_KERNEL); in damon_sysfs_watermarks_alloc()
816 if (!watermarks) in damon_sysfs_watermarks_alloc()
818 watermarks->kobj = (struct kobject){}; in damon_sysfs_watermarks_alloc()
819 watermarks->metric = metric; in damon_sysfs_watermarks_alloc()
820 watermarks->interval_us = interval_us; in damon_sysfs_watermarks_alloc()
821 watermarks->high = high; in damon_sysfs_watermarks_alloc()
822 watermarks->mid = mid; in damon_sysfs_watermarks_alloc()
823 watermarks->low = low; in damon_sysfs_watermarks_alloc()
824 return watermarks; in damon_sysfs_watermarks_alloc()
[all …]
/linux/tools/testing/selftests/damon/
H A Dsysfs.py36 def assert_watermarks_committed(watermarks, dump): argument
41 assert_true(dump['metric'] == wmark_metric_val[watermarks.metric],
43 assert_true(dump['interval'] == watermarks.interval, 'interval', dump)
44 assert_true(dump['high'] == watermarks.high, 'high', dump)
45 assert_true(dump['mid'] == watermarks.mid, 'mid', dump)
46 assert_true(dump['low'] == watermarks.low, 'low', dump)
132 assert_watermarks_committed(scheme.watermarks, dump['wmarks'])
238 watermarks=_damon_sysfs.DamosWatermarks(
H A Ddrgn_dump_damon_status.py119 def damos_watermarks_to_dict(watermarks): argument
120 return to_dict(watermarks, [
H A D_damon_sysfs.py393 watermarks = None variable in Damos
407 quota=DamosQuota(), watermarks=DamosWatermarks(), argument
415 self.watermarks = watermarks
416 self.watermarks.scheme = self
453 err = self.watermarks.stage()
/linux/drivers/gpu/drm/amd/display/dc/dml/dcn31/
H A Ddcn31_fpu.c523 …context->bw_ctx.bw.dcn.watermarks.a.urgent_ns = get_wm_urgent(&context->bw_ctx.dml, pipes, pipe_cn… in dcn31_calculate_wm_and_dlg_fp()
524 …context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.cstate_enter_plus_exit_ns = get_wm_stutter_enter… in dcn31_calculate_wm_and_dlg_fp()
525 …context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.cstate_exit_ns = get_wm_stutter_exit(&context->b… in dcn31_calculate_wm_and_dlg_fp()
526 …context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.pstate_change_ns = get_wm_dram_clock_change(&con… in dcn31_calculate_wm_and_dlg_fp()
527 …context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.cstate_enter_plus_exit_z8_ns = cstate_enter_plus… in dcn31_calculate_wm_and_dlg_fp()
528 …context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.cstate_exit_z8_ns = get_wm_z8_stutter_exit(&cont… in dcn31_calculate_wm_and_dlg_fp()
529 …context->bw_ctx.bw.dcn.watermarks.a.pte_meta_urgent_ns = get_wm_memory_trip(&context->bw_ctx.dml, … in dcn31_calculate_wm_and_dlg_fp()
530 …context->bw_ctx.bw.dcn.watermarks.a.frac_urg_bw_nom = get_fraction_of_urgent_bandwidth(&context->b… in dcn31_calculate_wm_and_dlg_fp()
531 …context->bw_ctx.bw.dcn.watermarks.a.frac_urg_bw_flip = get_fraction_of_urgent_bandwidth_imm_flip(&… in dcn31_calculate_wm_and_dlg_fp()
532 …context->bw_ctx.bw.dcn.watermarks.a.urgent_latency_ns = get_urgent_latency(&context->bw_ctx.dml, p… in dcn31_calculate_wm_and_dlg_fp()
[all …]
/linux/drivers/gpu/drm/amd/display/dc/hubbub/dcn201/
H A Ddcn201_hubbub.c55 union dcn_watermark_set *watermarks, in hubbub201_program_watermarks() argument
62 if (hubbub1_program_urgent_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub201_program_watermarks()
65 if (hubbub1_program_pstate_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub201_program_watermarks()
/linux/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn301/
H A Dvg_clk_mgr.h30 struct watermarks;
36 struct watermarks *wm_set;
H A Ddcn301_smu.h129 struct watermarks { struct
/linux/drivers/gpu/drm/amd/display/dc/hubbub/dcn21/
H A Ddcn21_hubbub.h130 union dcn_watermark_set *watermarks,
135 union dcn_watermark_set *watermarks,
140 union dcn_watermark_set *watermarks,
145 union dcn_watermark_set *watermarks,
/linux/drivers/gpu/drm/amd/display/dc/hubbub/dcn32/
H A Ddcn32_hubbub.h121 union dcn_watermark_set *watermarks,
127 union dcn_watermark_set *watermarks,
133 union dcn_watermark_set *watermarks,
139 union dcn_watermark_set *watermarks,
/linux/Documentation/admin-guide/mm/damon/
H A Dlru_sort.rst40 pressure watermarks.
68 no real monitoring and LRU-lists sorting due to the watermarks-based activation
69 condition. Refer to below descriptions for the watermarks parameter for this.
127 The watermarks check time interval in microseconds.
129 Minimal time to wait before checking the watermarks, when DAMON_LRU_SORT is
130 enabled but inactive due to its watermarks rule. 5 seconds by default.
139 watermarks. 200 (20%) by default.
157 watermarks. 50 (5%) by default.
H A Dreclaim.rst38 automatically activated and deactivated with three memory pressure watermarks.
60 no real monitoring and reclamation due to the watermarks-based activation
61 condition. Refer to below descriptions for the watermarks parameter for this.
150 Minimal time to wait before checking the watermarks, when DAMON_RECLAIM is
151 enabled but inactive due to its watermarks rule.
160 the watermarks.
178 watermarks. In the case, the system falls back to the LRU-list based page
H A Dusage.rst85 │ │ │ │ │ │ │ :ref:`watermarks <sysfs_watermarks>`/metric,interval_us,high,mid,low
336 ``watermarks``, ``core_filters``, ``ops_filters``, ``filters``, ``dests``,
428 schemes/<N>/watermarks/
431 The directory for the :ref:`watermarks <damon_design_damos_watermarks>` of the
434 Under the watermarks directory, five files (``metric``, ``interval_us``,
436 between check of the metric, and the three watermarks exist. You can set and
442 - none: Ignore the watermarks
621 # echo free_mem_rate > watermarks/metric
622 # echo 5000000 > watermarks/interval_us
623 # echo 600 > watermarks/high
[all …]
/linux/drivers/gpu/drm/amd/display/dc/hubbub/dcn20/
H A Ddcn20_hubbub.c594 union dcn_watermark_set *watermarks, in hubbub2_program_watermarks() argument
604 if (hubbub1_program_urgent_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub2_program_watermarks()
607 if (hubbub1_program_stutter_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub2_program_watermarks()
619 if (hubbub1_program_pstate_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub2_program_watermarks()
/linux/Documentation/ABI/testing/
H A Dsysfs-kernel-mm-damon340 What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric
344 of the watermarks for the scheme. The writable/readable
345 keywords for this file are 'none' for disabling the watermarks
349 What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us
353 check interval of the watermarks for the scheme in
356 What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high
362 What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid
368 What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low
H A Dsysfs-bus-iio1872 watermarks are fixed or have minimum levels). A value of 0
/linux/drivers/gpu/drm/amd/pm/powerplay/hwmgr/
H A Dsmu_helper.h45 struct watermarks { struct
H A Dsmu7_hwmgr.c5339 struct dm_pp_wm_sets_with_clock_ranges *watermarks = in smu7_set_watermarks_for_clocks_ranges() local
5351 for (k = 0; k < watermarks->num_wm_sets; k++) { in smu7_set_watermarks_for_clocks_ranges()
5352 if (dep_sclk_table->entries[i].clk >= watermarks->wm_clk_ranges[k].wm_min_eng_clk_in_khz / 10 && in smu7_set_watermarks_for_clocks_ranges()
5353 dep_sclk_table->entries[i].clk < watermarks->wm_clk_ranges[k].wm_max_eng_clk_in_khz / 10 && in smu7_set_watermarks_for_clocks_ranges()
5354 dep_mclk_table->entries[i].clk >= watermarks->wm_clk_ranges[k].wm_min_mem_clk_in_khz / 10 && in smu7_set_watermarks_for_clocks_ranges()
5355 dep_mclk_table->entries[i].clk < watermarks->wm_clk_ranges[k].wm_max_mem_clk_in_khz / 10) { in smu7_set_watermarks_for_clocks_ranges()
5357 table->DisplayWatermark[i][j] = watermarks->wm_clk_ranges[k].wm_set_id; in smu7_set_watermarks_for_clocks_ranges()
5363 table->DisplayWatermark[i][j] = watermarks->wm_clk_ranges[k - 1].wm_set_id); in smu7_set_watermarks_for_clocks_ranges()
H A Dsmu_helper.c719 struct watermarks *table = wt_table; in smu_set_watermarks_for_clocks_ranges()
/linux/Documentation/mm/damon/
H A Ddesign.rst614 DAMOS allows users to offload such works using three watermarks. It allows the
619 is activated. If all schemes are deactivated by the watermarks, the monitoring
621 checks the watermarks and therefore incurs nearly zero overhead.
623 To know how user-space can set the watermarks via :ref:`DAMON sysfs interface
624 <sysfs_interface>`, refer to :ref:`watermarks <sysfs_watermarks>` part of the
726 <damon_design_damos_quotas>`, :ref:`watermarks
/linux/drivers/gpu/drm/amd/display/dc/hwss/dcn20/
H A Ddcn20_hwseq.c2383 unsigned int cache_wm_a = context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.pstate_change_ns; in dcn20_prepare_bandwidth()
2396 context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.pstate_change_ns = 4U * 1000U * 1000U * 1000U; in dcn20_prepare_bandwidth()
2406 &context->bw_ctx.bw.dcn.watermarks, in dcn20_prepare_bandwidth()
2412 context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.pstate_change_ns = cache_wm_a; in dcn20_prepare_bandwidth()
2440 context->bw_ctx.bw.dcn.watermarks.a.cstate_pstate.pstate_change_ns = 4U * 1000U * 1000U * 1000U; in dcn20_optimize_bandwidth()
2447 &context->bw_ctx.bw.dcn.watermarks, in dcn20_optimize_bandwidth()
/linux/Documentation/admin-guide/sysctl/
H A Dvm.rst333 implies that the allocation will succeed as long as watermarks are met.
1082 distances between watermarks are 0.1% of the available memory in the
/linux/drivers/gpu/drm/amd/display/dc/hwss/dcn401/
H A Ddcn401_hwseq.c1394 &context->bw_ctx.bw.dcn.watermarks, in dcn401_prepare_bandwidth()
1439 &context->bw_ctx.bw.dcn.watermarks, in dcn401_optimize_bandwidth()
/linux/Documentation/filesystems/
H A Dproc.rst1111 watermarks in each zone.