I'll just post this heap profile



  • Total: 88283.8 MB
         0.0   0.0%   0.0%  88283.8 100.0% schedunlock
         0.0   0.0%   0.0%  88281.2 100.0% github.com/Nightgunner5/g/paint.dispatch
         3.5   0.0%   0.0%  88279.5 100.0% main.func·001
         0.0   0.0%   0.0%  88276.0 100.0% github.com/skelterjohn/go.wde/xgb.(*Window).FlushImage
        19.0   0.0%   0.0%  88269.0 100.0% github.com/BurntSushi/xgb/xproto.PutImage
         0.0   0.0%   0.0%  88269.0 100.0% github.com/BurntSushi/xgbutil/xgraphics.(*Image).XDraw
         0.0   0.0%   0.0%  88269.0 100.0% github.com/BurntSushi/xgbutil/xgraphics.(*Image).xdraw
     88226.5  99.9% 100.0%  88227.5  99.9% github.com/BurntSushi/xgb/xproto.putImageRequest
        27.0   0.0% 100.0%     27.0   0.0% github.com/BurntSushi/xgb.(*Conn).NewCookie
         2.0   0.0% 100.0%      7.0   0.0% github.com/BurntSushi/xgb/xproto.ClearArea
         0.0   0.0% 100.0%      7.0   0.0% github.com/BurntSushi/xgbutil/xgraphics.(*Image).XPaint
         1.2   0.0% 100.0%      1.2   0.0% github.com/BurntSushi/xgbutil/xgraphics.New
         0.0   0.0% 100.0%      1.2   0.0% github.com/skelterjohn/go%2ewde.NewWindow
         0.0   0.0% 100.0%      1.2   0.0% github.com/skelterjohn/go.wde/xgb.NewWindow
         0.0   0.0% 100.0%      1.2   0.0% github.com/skelterjohn/go.wde/xgb.func·001
         1.2   0.0% 100.0%      1.2   0.0% image.NewRGBA
         0.0   0.0% 100.0%      1.2   0.0% main.ui
         1.0   0.0% 100.0%      1.0   0.0% gc
         1.0   0.0% 100.0%      1.0   0.0% github.com/BurntSushi/xgb/xproto.clearAreaRequest
         0.0   0.0% 100.0%      1.0   0.0% github.com/skelterjohn/go.wde/init.init
         0.0   0.0% 100.0%      1.0   0.0% github.com/skelterjohn/go.wde/xgb.init
         0.0   0.0% 100.0%      1.0   0.0% main.init
         0.0   0.0% 100.0%      1.0   0.0% runtime.gc
         0.0   0.0% 100.0%      1.0   0.0% runtime.main
         0.0   0.0% 100.0%      0.5   0.0% github.com/BurntSushi/xgb.(*Conn).sendRequests
         0.0   0.0% 100.0%      0.5   0.0% github.com/BurntSushi/xgbutil/keybind.init
         0.5   0.0% 100.0%      0.5   0.0% github.com/BurntSushi/xgbutil/keybind.init·1
         0.0   0.0% 100.0%      0.5   0.0% github.com/BurntSushi/xgbutil/xwindow.init
         0.0   0.0% 100.0%      0.5   0.0% github.com/Nightgunner5/g/paint.paint
         0.0   0.0% 100.0%      0.5   0.0% github.com/Nightgunner5/g/paint.paintText
         0.5   0.0% 100.0%      0.5   0.0% github.com/skelterjohn/go.wde/xgb.init·2
         0.5   0.0% 100.0%      0.5   0.0% image.NewAlpha

    This is total allocation space.

    Columns are described by the documentation, but since you're lazy, here you go:

    • The first column contains the direct memory use in MB.
    • The fourth column contains memory use by the procedure and all of its callees.
    • The second and fifth columns are just percentage representations of the numbers in the first and fourth columns.
    • The third column is a cumulative sum of the second column (i.e., the kth entry in the third column is the sum of the first k entries in the second column.)

    Yes, 88 GIGABYTES.



  • "A utility library to make use of the X Go Binding easier. (Implements EWMH and ICCCM specs, key binding support, etc.)"

    Interesting. Looks like there's a memory leak somewhere important :b but otherwise not that big of a WTF. The interesting part is BurntSushi's NFLgame data library ;P



  • @fennec said:

    "A utility library to make use of the X Go Binding easier. (Implements EWMH and ICCCM specs, key binding support, etc.)"

    Interesting. Looks like there's a memory leak somewhere important :b but otherwise not that big of a WTF. The interesting part is BurntSushi's NFLgame data library ;P


    It's in this file, about three-quarters of the way down. I can't give you a line number because my browser gives up while pretty-printing it. Look for func putImageRequest.

    If the 14k lines of code in one (albeit generated) file wasn't enough, this library promises "immediate improvement from parallelism". That's exactly the kind of thing that helps when you want to queue three frames at the same time and then have them show in a random order or not at all.



  • What kind of runtime has identifiers like "github.com/BurntSushi/xgbutil/xgraphics.(*Image).XPaint"?



  • Yeah, I've seen worse.

    22854 mongodb 20 0 1124g 5.8g 5.7g S 1 37.3 1140:18 mongod

    Though, that's mainly because mongo just memory maps all of its data, and leaves it up to the OS to do everything.



  • @MiffTheFox said:

    What kind of runtime has identifiers like "github.com/BurntSushi/xgbutil/xgraphics.(*Image).XPaint"?


    XPaint is the identifier. The receiver is a pointer to Image. The package is github.com/BurntSushi/xgbutil/xgraphics.



  • I don't know of it's a good or bad thing that Go can import packages strait from github. Depends on what other free source code hosts they support probably.

    Unless package names are just arbitrary URLs like xmlns's.

    What's even more amazing is that people actually use Go I guess.



  • @MiffTheFox said:

    I don't know of it's a good or bad thing that Go can import packages strait from github. Depends on what other free source code hosts they support probably.




  •  There's no WTF here. This isn't physical memory, this is address space. On a 64-bit OS, address space isn't scarce and there's no reason to even try to conserve it.

     



  • @Ben L. said:

    Yes, 88 GIGABYTES.
    I'll see you in 1955.



  • @Adanine said:

    @Ben L. said:

    Yes, 88 GIGABYTES.
    I'll see you in 1955.

    So when did you decide that resources were unlimited? 1956?



    Dipshit.



  •  @bridget99 said:

    @Adanine said:

    @Ben L. said:

    Yes, 88 GIGABYTES.
    I'll see you in 1955.

    So when did you decide that resources were unlimited? 1956?



    Dipshit.

    Back to the Future reference

     



  • @Adanine said:

     @bridget99 said:

    @Adanine said:

    @Ben L. said:

    Yes, 88 GIGABYTES.
    I'll see you in 1955.

    So when did you decide that resources were unlimited? 1956?



    Dipshit.

    Back to the Future reference

     

    I apologize. I had one of SpectateSwamp's spirit stones in my ass and I wasn't thinking straight.



  • @bridget99 said:

    I had one of SpectateSwamp's spirit stones in my ass and I wasn't thinking straight.
     

    I... I... lol'd...



  • @Adanine said:

     @bridget99 said:

    @Adanine said:

    @Ben L. said:

    Yes, 88 GIGABYTES.
    I'll see you in 1955.

    So when did you decide that resources were unlimited? 1956?



    Dipshit.

    Back to the Future reference

     

    If it was 1.21 jiggabytes, I could see that.



  • @Ben L. said:

    @Adanine said:

     @bridget99 said:

    @Adanine said:

    @Ben L. said:

    Yes, 88 GIGABYTES.
    I'll see you in 1955.

    So when did you decide that resources were unlimited? 1956?



    Dipshit.

    Back to the Future reference

     

    If it was 1.21 jiggabytes, I could see that.
    Admittedly it was a weak reference.

     


Log in to reply