Asymptotic Complexity of Gaussian Elimination using Complete Pivoting
$begingroup$
I would like to know the algorithm asymptotic complexity with Complete Pivoting. With partial pivoting, it is known to be $O(n^3)$.
Is it the same for complete pivoting?
linear-algebra linear-solver complexity
$endgroup$
add a comment |
$begingroup$
I would like to know the algorithm asymptotic complexity with Complete Pivoting. With partial pivoting, it is known to be $O(n^3)$.
Is it the same for complete pivoting?
linear-algebra linear-solver complexity
$endgroup$
add a comment |
$begingroup$
I would like to know the algorithm asymptotic complexity with Complete Pivoting. With partial pivoting, it is known to be $O(n^3)$.
Is it the same for complete pivoting?
linear-algebra linear-solver complexity
$endgroup$
I would like to know the algorithm asymptotic complexity with Complete Pivoting. With partial pivoting, it is known to be $O(n^3)$.
Is it the same for complete pivoting?
linear-algebra linear-solver complexity
linear-algebra linear-solver complexity
edited Feb 8 at 15:51
Anton Menshov
3,91521663
3,91521663
asked Feb 8 at 9:07
IggIgg
132
132
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
$begingroup$
Yes. Searching the entire trailing submatrix for the next pivot instead of only the current column merely replaces the time spent on finding pivots from $O(n^2)$ to $O(n^3)$. While the total runtime is increased, the overall asymptotic complexity remains $O(n^3)$.
$endgroup$
add a comment |
$begingroup$
Carl's answer is correct, I upvoted it too. The growth in pivot searches from taking $O(n^2)$ steps to $O(n^3)$ steps is unfortunate, but doesn't jeopardize the overall complexity. But I think the usual caveats about big-$O$ notation should be doubly repeated, that omitting the constants can obscure important details.
The hidden problem here is that full pivoting appears to spoil the opportunity to use BLAS3 operations to do deferred updates on the trailing columns. Because any column might be holding the next pivot at any time, they always have to be to kept up to date using BLAS2 kernels.
In contrast, partial pivoting only requires BLAS2 to update a thin "leading panel" of upcoming columns, and can update all the trailing columns later using BLAS3 once the panel is done.
The bottom line of all this is that full pivoting runs vastly slower than partial pivoting on practical computers, despite having the same asymptotic complexity.
$endgroup$
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "363"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fscicomp.stackexchange.com%2fquestions%2f31029%2fasymptotic-complexity-of-gaussian-elimination-using-complete-pivoting%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
Yes. Searching the entire trailing submatrix for the next pivot instead of only the current column merely replaces the time spent on finding pivots from $O(n^2)$ to $O(n^3)$. While the total runtime is increased, the overall asymptotic complexity remains $O(n^3)$.
$endgroup$
add a comment |
$begingroup$
Yes. Searching the entire trailing submatrix for the next pivot instead of only the current column merely replaces the time spent on finding pivots from $O(n^2)$ to $O(n^3)$. While the total runtime is increased, the overall asymptotic complexity remains $O(n^3)$.
$endgroup$
add a comment |
$begingroup$
Yes. Searching the entire trailing submatrix for the next pivot instead of only the current column merely replaces the time spent on finding pivots from $O(n^2)$ to $O(n^3)$. While the total runtime is increased, the overall asymptotic complexity remains $O(n^3)$.
$endgroup$
Yes. Searching the entire trailing submatrix for the next pivot instead of only the current column merely replaces the time spent on finding pivots from $O(n^2)$ to $O(n^3)$. While the total runtime is increased, the overall asymptotic complexity remains $O(n^3)$.
answered Feb 8 at 9:41
Carl ChristianCarl Christian
97748
97748
add a comment |
add a comment |
$begingroup$
Carl's answer is correct, I upvoted it too. The growth in pivot searches from taking $O(n^2)$ steps to $O(n^3)$ steps is unfortunate, but doesn't jeopardize the overall complexity. But I think the usual caveats about big-$O$ notation should be doubly repeated, that omitting the constants can obscure important details.
The hidden problem here is that full pivoting appears to spoil the opportunity to use BLAS3 operations to do deferred updates on the trailing columns. Because any column might be holding the next pivot at any time, they always have to be to kept up to date using BLAS2 kernels.
In contrast, partial pivoting only requires BLAS2 to update a thin "leading panel" of upcoming columns, and can update all the trailing columns later using BLAS3 once the panel is done.
The bottom line of all this is that full pivoting runs vastly slower than partial pivoting on practical computers, despite having the same asymptotic complexity.
$endgroup$
add a comment |
$begingroup$
Carl's answer is correct, I upvoted it too. The growth in pivot searches from taking $O(n^2)$ steps to $O(n^3)$ steps is unfortunate, but doesn't jeopardize the overall complexity. But I think the usual caveats about big-$O$ notation should be doubly repeated, that omitting the constants can obscure important details.
The hidden problem here is that full pivoting appears to spoil the opportunity to use BLAS3 operations to do deferred updates on the trailing columns. Because any column might be holding the next pivot at any time, they always have to be to kept up to date using BLAS2 kernels.
In contrast, partial pivoting only requires BLAS2 to update a thin "leading panel" of upcoming columns, and can update all the trailing columns later using BLAS3 once the panel is done.
The bottom line of all this is that full pivoting runs vastly slower than partial pivoting on practical computers, despite having the same asymptotic complexity.
$endgroup$
add a comment |
$begingroup$
Carl's answer is correct, I upvoted it too. The growth in pivot searches from taking $O(n^2)$ steps to $O(n^3)$ steps is unfortunate, but doesn't jeopardize the overall complexity. But I think the usual caveats about big-$O$ notation should be doubly repeated, that omitting the constants can obscure important details.
The hidden problem here is that full pivoting appears to spoil the opportunity to use BLAS3 operations to do deferred updates on the trailing columns. Because any column might be holding the next pivot at any time, they always have to be to kept up to date using BLAS2 kernels.
In contrast, partial pivoting only requires BLAS2 to update a thin "leading panel" of upcoming columns, and can update all the trailing columns later using BLAS3 once the panel is done.
The bottom line of all this is that full pivoting runs vastly slower than partial pivoting on practical computers, despite having the same asymptotic complexity.
$endgroup$
Carl's answer is correct, I upvoted it too. The growth in pivot searches from taking $O(n^2)$ steps to $O(n^3)$ steps is unfortunate, but doesn't jeopardize the overall complexity. But I think the usual caveats about big-$O$ notation should be doubly repeated, that omitting the constants can obscure important details.
The hidden problem here is that full pivoting appears to spoil the opportunity to use BLAS3 operations to do deferred updates on the trailing columns. Because any column might be holding the next pivot at any time, they always have to be to kept up to date using BLAS2 kernels.
In contrast, partial pivoting only requires BLAS2 to update a thin "leading panel" of upcoming columns, and can update all the trailing columns later using BLAS3 once the panel is done.
The bottom line of all this is that full pivoting runs vastly slower than partial pivoting on practical computers, despite having the same asymptotic complexity.
edited Feb 8 at 15:50
answered Feb 8 at 15:44
rchilton1980rchilton1980
2,238712
2,238712
add a comment |
add a comment |
Thanks for contributing an answer to Computational Science Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fscicomp.stackexchange.com%2fquestions%2f31029%2fasymptotic-complexity-of-gaussian-elimination-using-complete-pivoting%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown