Git Product home page Git Product logo

Comments (11)

negril avatar negril commented on September 17, 2024 1

I'm more happy you are still kicking about. I never left in the first place. :)
My changes are in https://github.com/negril/paludis/tree/gentoo/build while I was contemplating how to solve #44.

Re the bug. It's likely related to ebuild_safe_source via loadenv which takes ~75% of each phase of the ERepository6 tests.
It's also code @Ionic touched see https://github.com/MageSlayer/paludis-gentoo-patches/blob/master/paludis/repositories/e/ebuild/source_functions.bash#L37C11-L122.

from paludis-gentoo-patches.

negril avatar negril commented on September 17, 2024

What branch did you rebase? Because everything in here is quite old and I haven't pushed the accumulated changes (yet).

from paludis-gentoo-patches.

Ionic avatar Ionic commented on September 17, 2024

That surprises me, since there weren't any changes to the EAPI=6 tests for years. Then again, it timing out might indicate an endless loop somewhere.

In any case, I started merging a lot of things on January, but then left it due to work and real life. I'll try to continue next week. It doesn't really make sense to debug stuff if so much other changes are currently missing.

from paludis-gentoo-patches.

MageSlayer avatar MageSlayer commented on September 17, 2024

Offtopic.
Glad you are alive, guys.
I thought I've already lost you :)

from paludis-gentoo-patches.

Ionic avatar Ionic commented on September 17, 2024

But the changes in 133e5d9 shouldn't be all that crazy. Maybe spawning sed instead of the old print_exports binary takes longer, but hardly double the time.

I mean, in the end, keeping that in mind as an optimization issue might be interesting, but we generally really need that change, since Gentoo started using associative arrays and the like.

I initially interpreted "timing out" as an issue, like the execution stopping due to a timeout error. This can't be the case, though, since in my build logs, I can see the test taking 465 seconds on my machine (yeah, older and rather slow by today's standards).

Fortunately, this doesn't seem to the case.

from paludis-gentoo-patches.

negril avatar negril commented on September 17, 2024

For the associative array thing I have a very dirty fix for that seems to work. I'll PR that in the next days.

from paludis-gentoo-patches.

piotrrak avatar piotrrak commented on September 17, 2024

I'll try to perf it, during this week. branch master vs. https://gitlab.exherbo.org/paludis/paludis. I've noticed I do have an (unintentional) change there which may explain some of this regression. Switching internal representation of FSPath to std::filesystem::path. Sorry about raising the alarm, but looked huge 52s vs 92s. Should have been more careful.

from paludis-gentoo-patches.

piotrrak avatar piotrrak commented on September 17, 2024

I do have this change on both versions though.

from paludis-gentoo-patches.

negril avatar negril commented on September 17, 2024

It's likely that it is something bash related.

from paludis-gentoo-patches.

piotrrak avatar piotrrak commented on September 17, 2024

Gonna see just to be sure, but too much overtime today to even attempt - I would mess it up tonight.

from paludis-gentoo-patches.

piotrrak avatar piotrrak commented on September 17, 2024

I can confirm previous findings it is ~48s vs ~91s. Not sure if I will nail down exact issues of this disparency easily, but something can be done for both repos just looking at simple perf report.

Just noticed that dynamic relocations of locked_pipe_command are pretty high:
Such simple change cuts execution time of e_repository_TEST_6 for both repos by pretty nice ~4s but making locked_pipe_command static executable

diff --git a/paludis/repositories/e/ebuild/utils/CMakeLists.txt b/paludis/repositories/e/ebuild/utils/CMakeLists.txt
index bfe61de2a..fdd174bd3 100644
--- a/paludis/repositories/e/ebuild/utils/CMakeLists.txt
+++ b/paludis/repositories/e/ebuild/utils/CMakeLists.txt
@@ -22,6 +22,7 @@ add_executable(print_exports
                  "${CMAKE_CURRENT_SOURCE_DIR}/print_exports.cc")
 add_executable(locked_pipe_command
                  "${CMAKE_CURRENT_SOURCE_DIR}/locked_pipe_command.cc")
+target_link_libraries(locked_pipe_command PRIVATE -static)
 add_executable(strip_tar_corruption
                  "${CMAKE_CURRENT_SOURCE_DIR}/strip_tar_corruption.cc")

This is not my priority at this moment, but can spend some time and try to see what hurts most. If anyone thinks such work is worthwhile.

from paludis-gentoo-patches.

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.