I have a microservice written in golang. It processes images and do other stuff.
In k8s it shows linear memory grow 
But in htop, it has stable memory usage. I tested it locally - also stable.

I understand, k8s shows some different memory usage, but what is it? And how to release/free this memory from golang?
There is no large heap. GC runs normally and I even run debug.FreeOSMemory() every 10 seconds from Go.
# cat /sys/fs/cgroup/memory/memory.stat
cache 3095613440
rss 189210624
rss_huge 0
shmem 0
mapped_file 1548288
dirty 15630336
writeback 0
pgpgin 7268911
pgpgout 6466952
pgfault 6519532
pgmajfault 15
inactive_anon 0
active_anon 189140992
inactive_file 628293632
active_file 2467319808
unevictable 0
hierarchical_memory_limit 8589934592
total_cache 3095613440
total_rss 189210624
total_rss_huge 0
total_shmem 0
total_mapped_file 1548288
total_dirty 15630336
total_writeback 0
total_pgpgin 7268911
total_pgpgout 6466952
total_pgfault 6519532
total_pgmajfault 15
total_inactive_anon 0
total_active_anon 189140992
total_inactive_file 628293632
total_active_file 2467319808
total_unevictable 0