Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::glop::ColumnsSaver Class Reference

Detailed Description

ColumnDeletionHelper Some preprocessors need to save columns/rows of the matrix for the postsolve. This class helps them do that.

Note
we used to simply use a SparseMatrix, which is like a vector of SparseColumn. However on large problem with 10+ millions columns, each empty SparseColumn take 48 bytes, so if we run like 10 presolve step that save as little as 1 columns, we already are at 4GB memory for nothing!

Definition at line 161 of file preprocessor.h.

#include <preprocessor.h>

Public Member Functions

void SaveColumn (ColIndex col, const SparseColumn &column)
 Saves a column. The first version CHECKs that it is not already done.
void SaveColumnIfNotAlreadyDone (ColIndex col, const SparseColumn &column)
const SparseColumnSavedColumn (ColIndex col) const
 Returns the saved column. The first version CHECKs that it was saved.
const SparseColumnSavedOrEmptyColumn (ColIndex col) const

Member Function Documentation

◆ SaveColumn()

void operations_research::glop::ColumnsSaver::SaveColumn ( ColIndex col,
const SparseColumn & column )

Saves a column. The first version CHECKs that it is not already done.

ColumnDeletionHelper

Definition at line 216 of file preprocessor.cc.

◆ SaveColumnIfNotAlreadyDone()

void operations_research::glop::ColumnsSaver::SaveColumnIfNotAlreadyDone ( ColIndex col,
const SparseColumn & column )

Definition at line 222 of file preprocessor.cc.

◆ SavedColumn()

const SparseColumn & operations_research::glop::ColumnsSaver::SavedColumn ( ColIndex col) const

Returns the saved column. The first version CHECKs that it was saved.

Definition at line 229 of file preprocessor.cc.

◆ SavedOrEmptyColumn()

const SparseColumn & operations_research::glop::ColumnsSaver::SavedOrEmptyColumn ( ColIndex col) const

Definition at line 235 of file preprocessor.cc.


The documentation for this class was generated from the following files: