Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mig_algebraic_depth_rewriting_splitters::run_selective is endless #548

Open
Flians opened this issue Apr 11, 2022 · 1 comment
Open

mig_algebraic_depth_rewriting_splitters::run_selective is endless #548

Flians opened this issue Apr 11, 2022 · 1 comment
Labels
bug Something isn't working wontfix This will not be worked on (deprecated/outdated)

Comments

@Flians
Copy link

Flians commented Apr 11, 2022

When I run mig_algebraic_depth_rewriting_splitters for c5315.v with the parameter selective, I found that the run_selective is endless.

ps_alg_rewrite.strategy = mockturtle::mig_algebraic_depth_rewriting_params::selective;
mig_algebraic_depth_rewriting_splitters(mig, ps_alg_rewrite);

And while in mockturtle::buffer_insertion::optimize can be not finished:

    while ( true )
    {
      mark_critical_paths();

      topo_view topo{ntk};
      topo.foreach_node( [this, &counter]( auto n ) {
        if ( ntk.fanout_size( n ) == 0 || ntk.value( n ) == 0 )
          return;
        if ( reduce_depth( n ) )
        {
          mark_critical_paths();
        }
        else
        {
          ++counter;
        }
      } );

      if ( counter > ntk.size() )
        break;
    }

Can you help me solve it?

@lee30sonia
Copy link
Member

Thanks for reporting.
This part of the code is not well tested but is not planned to be worked on either in the near future. I would suggest to either

  1. use the other options (e.g. dfs as in the original experiment), or
  2. force a fixed upper bound on the number of loop iterations (e.g. by changing while(true) into for(auto i=0; i<10; ++i)) if you really want to use this option.

@lee30sonia lee30sonia reopened this Apr 11, 2022
@lee30sonia lee30sonia added the wontfix This will not be worked on (deprecated/outdated) label Apr 11, 2022
@lee30sonia lee30sonia added the bug Something isn't working label Aug 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working wontfix This will not be worked on (deprecated/outdated)
Projects
None yet
Development

No branches or pull requests

2 participants