Skip to content

Conversation

@CISC
Copy link
Contributor

@CISC CISC commented Apr 5, 2025

Upstreamed from ikawrakow/ik_llama.cpp#283 and ikawrakow/ik_llama.cpp#313

Resubmission of #1178 with attribution to @ikawrakow

@ikawrakow
Copy link
Contributor

I added some thoughts on this here

@CISC
Copy link
Contributor Author

CISC commented Apr 6, 2025

This file has no copyright notice downstream, but I'm more than happy to add a notice to the two new functions if you wish @ikawrakow

@ikawrakow
Copy link
Contributor

This file has no copyright notice downstream, but I'm more than happy to add a notice to the two new functions if you wish @ikawrakow

Thank you. I have decided to follow a strategy where my changes to a file need to exceed some threshold before I add a copyright notice to the file. I haven't done that with ggml-cuda.cu, but I think my changes (or at least their utility) are now large enough to merit my name on the file (and I have just forgotten to do it). I will spend some time to review my changes to other files I have modified in the next days.

CISC added 2 commits April 6, 2025 18:38
(and minor indentation fix)

const int64_t i11 = id % ne11;
const int64_t i12 = iid1;
// MIT licensed. Copyright (C) 2025 Iwan Kawrakow
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please also link the PRs from which the code has been taken.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please note that the ggml projects track copyrights through the git history, which is a more accurate mechanism than having copyright notices in the source code. The latter becomes obsolete very quickly, while the git commit history preserves information about the specific changes and the process is fully automated. Therefore the recommended way to register a copyright when upstreaming code to the projects is by setting the correct author of the patches. See ggml-org/llama.cpp#6405 for more information.

Just wanted to make sure that you understand that these notices are redundant and the maintainers will not be responsible to preserve them with time. Also would like to make it explicitly clear - the presence of such notices in the code will not prevent usage of the referenced code in other parts of the codebase, regardless if the copyright holder agrees or not. One of the main goals to have an MIT-based project is to be able to work in a collaboration that freely allows to share and apply ideas among all contributors and parts of the codebase. The origins of an idea can be accurately tracked through the commit history and the AUTHORS file clearly notifies about all copyright holders of the project.

Linking original PRs is fine.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was thinking more along the lines of just documenting where the code comes from since otherwise the copyright notices would be confusing. I did not intend to comment on how and where copyright notices are acceptable.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the MIT license I'm obligated to preserve the copyright notice when there is one, while this does not apply here since the downstream file didn't happen to have one I think I'm nevertheless going to insist this time.

Subsequent PRs will be based off files that do have it, so as far as the license goes I don't think we have a choice. When/if the affected code goes away or gets significantly altered by someone else I don't see a problem with modifying/removing the notice as fit.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so as far as the license goes I don't think we have a choice.

Including copyright notices is optional since the Berne convention - this was discussed last year: ggml-org/llama.cpp#6394.

And again - we do provide the notices in the AUTHORS files. There is no need to sprinkle them inside the code.

@CISC CISC requested a review from JohannesGaessler April 6, 2025 18:57
@ggerganov
Copy link
Member

@CISC I am sorry, but I believe that the author of these changes is not actually OK with their code being contributed to our projects and used as described by the MIT license (see ikawrakow/ik_llama.cpp#316 (comment)). Therefore I would have to close this PR.

@ggerganov ggerganov closed this Apr 7, 2025
@ikawrakow
Copy link
Contributor

Author of the copied code in question here. For the record, I'm OK with the PR as submitted.

@CISC
Copy link
Contributor Author

CISC commented Apr 7, 2025

@ggerganov I won't pursue this further if you do not wish to upstream these changes (which would be a pity), but the dispute is clearly over how attribution is done, and as stated by @ikawrakow here he is OK with this way of doing it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants