Page 2 of 2 FirstFirst 12
Results 16 to 24 of 24

Thread: Newish buggy

  1. #16
    Electron wrangler jwiede's Avatar
    Join Date
    Aug 2007
    Location
    San Jose, CA
    Posts
    6,610
    Quote Originally Posted by MonroePoteet View Post
    Yeah, without access to the source code (including maps), it's all guesswork for me. RE: parameter validation, handling error states, etc. there's always a problem with robust code being slow. At the inner loops (like the raster block transfers into graphics memory and the code directly feeding those routines), I can imagine error checking and parameter validation is fairly minimal to keep the performance up.
    Actually with modern CPU's branch-prediction architectures, you can construct error code checks (any simple, non-loop branches, really) in such a way that they're effectively "free" as long as the code remains on the "expected"/"non-branching" path, and performance in error paths is generally (not always, but generally) moot. Most modern compiler toolchains do so automatically.

    The notion that checking for error codes on API returns implies a performance hit hasn't been an accurate assumption for some time now. Obviously, additional checking like range checks, parameter validation, etc. incur performance cost, but simple error code return checks (typically a 0/!0 or !0/0 compare), as well as other such simple, non-loop branches, do not generally impact performance any longer.

    I can give the TL ; DR explanation if desired, but if you understand the basics of instruction speculation and branch prediction, you should be able to figure out why for yourselves.
    Last edited by jwiede; 12-01-2019 at 06:34 PM.
    John W.
    LW2015.3UB/2019.1.4 on MacPro(12C/24T/10.13.6),32GB RAM, NV 980ti

  2. #17
    Still...Absolute Amateur scallahan1's Avatar
    Join Date
    Aug 2012
    Location
    Salem, NH
    Posts
    175
    It does the same crash in Layout AND Modeler 2019.1.2 and 2019.1.3 but okay in 2019.0.3

  3. #18
    Curmudgeon in Training Ma3rk's Avatar
    Join Date
    Mar 2003
    Location
    Near Beaverton, OR
    Posts
    1,472
    Quote Originally Posted by jwiede View Post
    I can give the TL ; DR explanation if desired, but if you understand the basics of instruction speculation and branch prediction, you should be able to figure out why for yourselves.
    Quite alright John. My eyes rolled up into their sockets some postings back. I thank all of you for talking a look & demonstrating how discriminating it is.

    I'm going to assume for now that along with my initial report & the attention given here, someone either in the high towers, or mid to lower dungeons has caught wind by now.
    "Never be a cat in a cartoon. Never." Chief Wiggum

  4. #19
    Registered User
    Join Date
    Jan 2005
    Location
    Colorado Springs
    Posts
    1,807
    Quote Originally Posted by jwiede View Post
    Actually with modern CPU's branch-prediction architectures, you can construct error code checks (any simple, non-loop branches, really) in such a way that they're effectively "free" as long as the code remains on the "expected"/"non-branching" path, and performance in error paths is generally (not always, but generally) moot. Most modern compiler toolchains do so automatically.

    <snip>
    OK, thanks. Unfortunately, at the "trusted interface" level (such as inner loop code) if a caller violates that trust it may be the only desirable error handling technique is to crash and find the culprit. Dunno. I think the BitBlt code can't afford ANY sort of parameter checking without a serious performance hit (i.e. it's executed millions of times so is optimized to the maximum), so if someone passes something in that's wrong, an ACCVIO, the associated crash, and the dump analysis is the "error handling" - *hopefully* before the product ships!

    RE:
    Quote Originally Posted by Ma3rk View Post
    I'm going to assume for now that along with my initial report & the attention given here, someone either in the high towers, or mid to lower dungeons has caught wind by now.
    I wouldn't count on it unless you submit a bug report. I'm not pursuing further LW time investment post-PBR until I have a *LOT* more time to learn it well, so I'm not submitting / debugging for a while. Other stuff to do!

    mTp

  5. #20
    Curmudgeon in Training Ma3rk's Avatar
    Join Date
    Mar 2003
    Location
    Near Beaverton, OR
    Posts
    1,472
    Quote Originally Posted by MonroePoteet View Post
    RE:

    I wouldn't count on it unless you submit a bug report. I'm not pursuing further LW time investment post-PBR until I have a *LOT* more time to learn it well, so I'm not submitting / debugging for a while. Other stuff to do!

    mTp
    That's what I meant. I did file a bug report.
    "Never be a cat in a cartoon. Never." Chief Wiggum

  6. #21
    Registered User
    Join Date
    Jan 2005
    Location
    Colorado Springs
    Posts
    1,807
    OK, great! Hopefully, it's an easy fix!

    mTp

  7. #22
    Quote Originally Posted by MonroePoteet View Post
    OK, great! Hopefully, it's an easy fix!

    mTp
    Easy fix for LW2020 maybe. I doubt 2019 will ever get anymore love.
    Tim Parsons
    Technical Designer
    Sauder Woodworking Co.

    http://www.sauder.com

  8. #23
    Not so newbie member lardbros's Avatar
    Join Date
    Apr 2003
    Location
    England
    Posts
    5,873
    Did you try deleting (or backing up your configs?) and then trying with fresh configs?
    LairdSquared | 3D Design & Animation

    Desk Work:
    HP Z840, Dual Xeon E5-2690 v2, 32GB RAM, Quadro K5000 4GB
    Desk Home:
    HP Z620, Dual Xeon E5-2680, 80GB RAM, Geforce 1050 Ti 4GB

  9. #24
    Checked and I can also reproduce this issue
    Rob Depew
    Modeler/Animator/Editor
    Web Portfolio
    My Patreon
    YouTube
    Lightwave3D 2019, RF10, Gaea and more..
    Threadripper 32 core , 48gb, GTX-1070
    Asus 752vt i7 2.6 x 4, 48gb, GTX-970

Page 2 of 2 FirstFirst 12

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •