Giter Site home page Giter Site logo

Comments (24)

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024 1

I also faced this issue. Initially I tried looking for ways to "Enable file structure caching" but couldnt' find it anywhere.

I ended up going back to Visual Studio 2019 because the faster (Alt+U) speeds were more useful to me compared to the new VS 2022 features.

Wow, that's pretty drastic. :)

Let me take a look to see if it'd possible to move that to VS 2022 version. Not sure how quickly I'll be able to get to that though.

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024 1

Took a look at old source code and found what I was looking for. Doesn't look too complicated to port it to the new version. I'll just need to find some time to get to it.

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

Total # of file in the solution and their language are the biggest variables. Once you get to 190 projects the # of projects themselves plays into that as well. Performance you describe in the latest version seems to be adequate enough w/o comparing it to the old version.

Converting from WinForms to WPF in DPack Rx does have a price to pay. Question would be whether it takes place during the solution processing/collection or later binding a large result set to WPF view. I'd suggest turning DPack Rx logging on, which can be found on Tools|Options -> DPack Rx General page. AppData\Local\DPack Rx is the location of log file. Collect the logs exercising File Browser and post it here. Thanks.

from dpack.

frankfuu avatar frankfuu commented on June 3, 2024

I also faced this issue. Initially I tried looking for ways to "Enable file structure caching" but couldnt' find it anywhere.

I ended up going back to Visual Studio 2019 because the faster (Alt+U) speeds were more useful to me compared to the new VS 2022 features.

from dpack.

frankfuu avatar frankfuu commented on June 3, 2024

Wow, that's pretty drastic. :)

Let me take a look to see if it'd possible to move that to VS 2022 version. Not sure how quickly I'll be able to get to that though.

Yeah DPack's Alt+U feature has saved me countless hours over the last decade or so. Would absoluately amazing if this feature can be ported to VS2022's version. Honestly happy to donate in any way or form.

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

Yeah DPack's Alt+U feature has saved me countless hours over the last decade or so. Would absoluately amazing if this feature can be ported to VS2022's version.

Out of curiosity, what's your solution make up like? Meaning, projects language, number of projects, target framework and total number of files? Thanks.

from dpack.

frankfuu avatar frankfuu commented on June 3, 2024

Yeah DPack's Alt+U feature has saved me countless hours over the last decade or so. Would absoluately amazing if this feature can be ported to VS2022's version.

Out of curiosity, what's your solution make up like? Meaning, projects language, number of projects, target framework and total number of files? Thanks.

We target .net framework 48 using c# , have about 12 projects and the file breakdown with the following.

Name          Count
----          -----
.cs            2210
.cshtml        1665
.js            1057
.PNG            661
.jsx            263
.datasource     225
.scss           194
.css            167
.dll            123
.svg            104
.config         102
.less            98
.xml             93
.json            66
.html            54
.map             44
.gif             30
.csproj          29
.ttf             23
.txt             21
.sitemap         21
.woff            19
.ps1             15
.eot             15
.xsd             15
.woff2           12
.md              12
.otf              9
.ico              8
.pubxml           8
.svcinfo          6
.webmanifest      4

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

In my day job we have a few solutions, with the largest one being roughly 70 projects. All .NET 4.8 (unfortunately) as well. It packs slightly more code files than your test case, and large set of Xaml files. Yes, there is a slight delay opening it up but the total time is under 1 second, otherwise it would've shown the progress dialog.

So having said that, I wonder what makes your solution so different from my test case. What kind of performance were you getting on VS 2022 out of it?

from dpack.

frankfuu avatar frankfuu commented on June 3, 2024

In my day job we have a few solutions, with the largest one being roughly 70 projects. All .NET 4.8 (unfortunately) as well. It packs slightly more code files than your test case, and large set of Xaml files. Yes, there is a slight delay opening it up but the total time is under 1 second, otherwise it would've shown the progress dialog.

So having said that, I wonder what makes your solution so different from my test case. What kind of performance were you getting on VS 2022 out of it?

I'll have to double check again when i'm on my work from office laptop during my office days, I'll report back in a few days ;)

from dpack.

frankfuu avatar frankfuu commented on June 3, 2024

In my day job we have a few solutions, with the largest one being roughly 70 projects. All .NET 4.8 (unfortunately) as well. It packs slightly more code files than your test case, and large set of Xaml files. Yes, there is a slight delay opening it up but the total time is under 1 second, otherwise it would've shown the progress dialog.

So having said that, I wonder what makes your solution so different from my test case. What kind of performance were you getting on VS 2022 out of it?

On my older laptop (circa 2018) it took about 2-2.5 seconds, on my beefier desktop it was under 1 second (but still noticable compared to VS2019 performance)

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

Guys, could you try the new beta posted in issue #54 ? It contains a different patch than what I'd originally planned here. It does prevent duplicate projects processing, which undoubtedly had contributed to this issue. Thanks.

from dpack.

igitur avatar igitur commented on June 3, 2024

I don't have large projects, so haven't really noticed this, but I'm just curious. Is the slowdown mentioned here due to the enumeration of the files, or the WPF overhead in populating the observable collections?

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

Yeah, large part of that doubling of processing time in some cases. WPF conversion did carry perf penalty. There is another piece I started on but haven't gotten to completing is resurrecting File Browser project caching.

from dpack.

igitur avatar igitur commented on June 3, 2024

I see references to VirtualizingStackPanel in the ListView attributes, but I don't see a VirtualizingStackPanel anywhere. Is this correct?

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

It's created behind the scenes based on a couple of properties: VirtualizingStackPanel.IsVirtualizing and VirtualizingStackPanel.VirtualizationMode

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

Anybody interested in giving test version to try? Thanks.

from dpack.

igitur avatar igitur commented on June 3, 2024

Anybody interested in giving test version to try? Thanks.

Sure, I'll test. Where do I find it?

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

Will post it this weekend. Thanks.

from dpack.

sergey-visual-studio avatar sergey-visual-studio commented on June 3, 2024

Here you go:

DPackBeta.zip

from dpack.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.