I didn't found the attachment here. Can you put it somewhere. Maybe as 
github gist?

On Monday, May 9, 2022 at 4:18:52 AM UTC+2 garenchan wrote:

> /proc/<pid>/limits  of the two processes are the same.
> But /proc/<pid>/smaps of the two processes are quite different, I have 
> uploaded them to the attachment.
>
>
> 在2022年5月8日星期日 UTC+8 16:08:50<Uli Kunitz> 写道:
>
>> I cannot say what the difference is, but I would do two things to solve 
>> the mystery:
>>
>> 1) Compare /proc/<pid>/limits for differences.
>> 2) Compare the output of egrep '^Rss:|^[0-9a-f]' /proc/<pid>/smaps for 
>> the processes on the different machines.
>>
>> Report the results and share the outputs.
>>
>> On Friday, May 6, 2022 at 2:16:51 PM UTC+2 ren...@ix.netcom.com wrote:
>>
>>> https://www.arp242.net/static-go.html
>>>
>>> On May 5, 2022, at 11:27 PM, garenchan <garen...@gmail.com> wrote:
>>>
>>> The binary file is not a dynamic executable.   So I don't think that 
>>> will happen.
>>>
>>>
>>>
>>> 在2022年5月6日星期五 UTC+8 11:54:44<ren...@ix.netcom.com> 写道:
>>>
>>>> Are you certain that on the low memory instance there isn’t another 
>>>> process - maybe Go - that hasn’t already loaded the shared libraries - and 
>>>> on the other it hasn’t - so the RSS is different. Compare the VSZ sizes 
>>>> and 
>>>> see if they are the same. 
>>>>
>>>> On May 5, 2022, at 10:28 PM, garenchan <garen...@gmail.com> wrote:
>>>>
>>>> @jake, I tried 1.18 version of Go, but the problem still exists. 
>>>>
>>>>
>>>> I also tried using C to write program that includes memory allocation 
>>>> and usage,  and this problem does not occur.
>>>> 在2022年5月5日星期四 UTC+8 21:25:20<jake...@gmail.com> 写道:
>>>>
>>>>> Since no one has responded with concrete ideas, I'll throw out two 
>>>>> suggestions. They may seem obvious.
>>>>>
>>>>>  First have you tries the latest version of Go? and do you get the 
>>>>> same results?
>>>>>
>>>>>  Second have you run the experiment with a small binaries not from Go? 
>>>>> I would suggest something that does allocate some real memory, *not *a 
>>>>> "hello world" C program or something.
>>>>> On Thursday, May 5, 2022 at 7:21:39 AM UTC-4 garenchan wrote:
>>>>>
>>>>>>
>>>>>> Both hosts have 8 cores and 16GB RAM.
>>>>>> 在2022年4月30日星期六 UTC+8 00:19:44<garenchan> 写道:
>>>>>>
>>>>>>> *What version of Go are you using (go version)?*
>>>>>>>
>>>>>>> $ go version
>>>>>>> go version go1.17.6 linux/amd64
>>>>>>>
>>>>>>> *Does this issue reproduce with the latest release?*
>>>>>>>
>>>>>>> uncertain
>>>>>>>
>>>>>>> *What operating system and processor architecture are you using (go 
>>>>>>> env)?*
>>>>>>>
>>>>>>> $ go env
>>>>>>> GO111MODULE="on"
>>>>>>> GOARCH="amd64"
>>>>>>> GOBIN=""
>>>>>>> GOCACHE="/root/.cache/go-build"
>>>>>>> GOENV="/root/.config/go/env"
>>>>>>> GOEXE=""
>>>>>>> GOEXPERIMENT=""
>>>>>>> GOFLAGS=""
>>>>>>> GOHOSTARCH="amd64"
>>>>>>> GOHOSTOS="linux"
>>>>>>> GOINSECURE=""
>>>>>>> GOMODCACHE="/root/go/pkg/mod"
>>>>>>> GONOPROXY=""
>>>>>>> GONOSUMDB=""
>>>>>>> GOOS="linux"
>>>>>>> GOPATH="/root/go"
>>>>>>> GOPRIVATE=""
>>>>>>> GOPROXY=""
>>>>>>> GOROOT="/home/go"
>>>>>>> GOSUMDB="off"
>>>>>>> GOTMPDIR=""
>>>>>>> GOTOOLDIR="/home/go/pkg/tool/linux_amd64"
>>>>>>> GOVCS=""
>>>>>>> GOVERSION="go1.17.6"
>>>>>>> GCCGO="gccgo"
>>>>>>> AR="ar"
>>>>>>> CC="gcc"
>>>>>>> CXX="g++"
>>>>>>> CGO_ENABLED="1"
>>>>>>> GOMOD="/home/demo/go.mod"
>>>>>>> CGO_CFLAGS="-g -O2"
>>>>>>> CGO_CPPFLAGS=""
>>>>>>> CGO_CXXFLAGS="-g -O2"
>>>>>>> CGO_FFLAGS="-g -O2"
>>>>>>> CGO_LDFLAGS="-g -O2"
>>>>>>> PKG_CONFIG="pkg-config"
>>>>>>> GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 
>>>>>>> -fdebug-prefix-map=/tmp/go-build4023324410=/tmp/go-build 
>>>>>>> -gno-record-gcc-switches"
>>>>>>>
>>>>>>> *What did you do?*
>>>>>>>
>>>>>>> I encountered a memory problem with the GO program, see here for 
>>>>>>> details.(
>>>>>>> https://stackoverflow.com/questions/71994609/memory-footprint-of-the-same-program-varies-greatly-in-two-similar-environments
>>>>>>> )
>>>>>>>
>>>>>>> In order to simplify the analysis, I wrote a simple program to test.
>>>>>>>
>>>>>>> ```go
>>>>>>> package main
>>>>>>>
>>>>>>> import (
>>>>>>>     "time"
>>>>>>> )
>>>>>>>
>>>>>>> func main() {
>>>>>>>     time.Sleep(60*time.Second)
>>>>>>> }
>>>>>>> ```
>>>>>>>
>>>>>>>
>>>>>>>    - I compiled it into binary file on a linux host `host1` with 
>>>>>>>    kernel 4.18. Then I run it on `host1` and the process takes up close 
>>>>>>> to 5MB 
>>>>>>>    RSS.
>>>>>>>    - I then copy the binary file to another host `host2` with 
>>>>>>>    kernel 4.18. I also ran it on `host2`, but this time the process 
>>>>>>> took up 
>>>>>>>    less than 1MB RSS.
>>>>>>>    - I repeated the test many times and observed the same thing.
>>>>>>>
>>>>>>>
>>>>>>> ```
>>>>>>> $ uname -a
>>>>>>> Linux host1 4.18.0 #1 SMP Wed Nov 10 20:46:19 CST 2021 x86_64 x86_64 
>>>>>>> x86_64 GNU/Linux
>>>>>>>
>>>>>>> $ uname -a
>>>>>>> Linux host2 4.18.0 #1 SMP Fri May 8 10:59:10 UTC 2021 x86_64 x86_64 
>>>>>>> x86_64 GNU/Linux
>>>>>>> ```
>>>>>>>
>>>>>>> Why is memory footprint of the same program in similar environments 
>>>>>>> so different? What factors might be contributing to this problem?
>>>>>>>
>>>>>>> *What did you expect to see?*
>>>>>>>
>>>>>>> I would expect to see the memory footprint of the same program in 
>>>>>>> similar environments be close. I look forward to your answers. Thank 
>>>>>>> you 
>>>>>>> very much.
>>>>>>>
>>>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "golang-nuts" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to golang-nuts...@googlegroups.com.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/golang-nuts/d8a3e1d9-e578-4668-9b19-38b49e29cd11n%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/golang-nuts/d8a3e1d9-e578-4668-9b19-38b49e29cd11n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "golang-nuts" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to golang-nuts...@googlegroups.com.
>>>
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/golang-nuts/c524a157-7772-4bcd-9ce5-c04b95fb560en%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/golang-nuts/c524a157-7772-4bcd-9ce5-c04b95fb560en%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/5de3335b-fc23-432a-9723-2fdaef613eadn%40googlegroups.com.

Reply via email to