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

Rebuild for pytorch 2.5, add python 3.13, update to flash-attn 2.7.0.post2 #20

Merged

Conversation

regro-cf-autotick-bot
Copy link
Contributor

@regro-cf-autotick-bot regro-cf-autotick-bot commented Nov 4, 2024

This PR has been triggered in an effort to update pytorch25.

Notes and instructions for merging this PR:

  1. Please merge the PR only after the tests have passed.
  2. Feel free to push to the bot's branch to update this PR if needed.

Please note that if you close this PR we presume that the feedstock has been rebuilt, so if you are going to perform the rebuild yourself don't close this PR until the your rebuild has been merged.


If this PR was opened in error or needs to be updated please add the bot-rerun label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase @conda-forge-admin, please rerun bot in a PR comment to have the conda-forge-admin add it for you.

This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/11669226258 - please use this URL for debugging.

Closes #22
Closes #17

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

@weiji14 weiji14 marked this pull request as draft November 4, 2024 21:28
@weiji14 weiji14 mentioned this pull request Nov 4, 2024
@jeongseok-meta jeongseok-meta mentioned this pull request Nov 6, 2024
5 tasks
@jeongseok-meta
Copy link

@weiji14 I was able to build for linux with no errors (https://anaconda.org/jslee02/flash-attn/files). Could you please retrigger the CI to see if this build?

@weiji14
Copy link
Member

weiji14 commented Nov 6, 2024

Sure, I can restart the CI, but didn't want to use up most of the Openstack CI runners if you're still working on #19 (they have a limited amount of runners, and these flash-attn builds take ~9 hours as you're aware). Would it be possible to finish #19 first and then we do Pytorch 2.5 rebuild + Python 3.13 (#17)?

@jeongseok-meta
Copy link

I wasn't aware of #19 and the order of preference for which one should be merged. It's totally up to you and the author of #19, but I assumed this one would be a simple merge (if it passes) while the other, #19, seems to need more work to reach consensus.

@weiji14
Copy link
Member

weiji14 commented Nov 6, 2024

Oh sorry, I was confusing you with the author of #19 (been looking at too many feedstocks recently 😅). This feedstock is a little different to the other conda-forge feedstocks in that 1) We're using a separate Openstack CI system that has a limited amount of resources compared to Azure Pipelines, and 2) The CI takes almost 9 hours to build per combination, and with 5 Python versions * 2 CUDA versions = 10 runs, this can block up the server queue (as mentioned before at #10 (comment)).

So I think we'll wait for #19 to finish first, will be easier to rebase this one (#20) on top of that later.

@jeongseok-meta
Copy link

No worries! The plan makes sense to me, and it sounds good. In the meantime, I've pushed my local build for pytorch 2.5, so if someone wants to try flash-attn with pytorch 2.5, they can give it a shot!

https://anaconda.org/jslee02/flash-attn/files

@carterbox
Copy link
Member

We will merge the other pending branches into this branch for the next release.

@carterbox carterbox marked this pull request as ready for review November 18, 2024 01:34
@carterbox carterbox marked this pull request as draft November 18, 2024 01:35
@carterbox carterbox changed the title Rebuild for pytorch 2.5 Rebuild for pytorch 2.5, add python 3.13, update to flash-attn 2.7 Nov 18, 2024
@carterbox carterbox self-assigned this Nov 18, 2024
@carterbox
Copy link
Member

carterbox commented Nov 18, 2024

Waiting for #19 to complete in order to publish rebase because I don't want to monopolize the build resources. I already have it rebased locally.

@carterbox carterbox marked this pull request as ready for review November 18, 2024 16:06
@carterbox
Copy link
Member

No automerge because the bot doesn't have permission to trigger builds. Anyone please merge if everything passes.

@weiji14 weiji14 changed the title Rebuild for pytorch 2.5, add python 3.13, update to flash-attn 2.7 Rebuild for pytorch 2.5, add python 3.13, update to flash-attn 2.7.0.post2 Nov 19, 2024
@weiji14
Copy link
Member

weiji14 commented Nov 19, 2024

There was a download error because the 2.7.0 release wasn't on PyPI, so I've bumped it to 2.7.0.post2 (https://pypi.org/project/flash-attn/2.7.0.post2/).

I've also checked the diff on setup.py between 2.6.3 and 2.7.0.post2, seems like only ROCm related changes which shouldn't affect what's here in this feedstock (which is CUDA-only).

@weiji14
Copy link
Member

weiji14 commented Nov 19, 2024

All builds passed except for Python 3.13 + CUDA 11.8 which seemed to have hit a timeout error:

conda.CondaMultiError: ('Connection broken: IncompleteRead(282831187 bytes read, 206660643 more expected)', IncompleteRead(282831187 bytes read, 206660643 more expected))
('Connection broken: IncompleteRead(282831187 bytes read, 206660643 more expected)', IncompleteRead(282831187 bytes read, 206660643 more expected))

Do we want to restart that build to make sure it works? I've tested building locally up to the [1/85] step, but unsure if it'll get to [85/85] 🙂

Copy link
Member

@weiji14 weiji14 left a comment

Choose a reason for hiding this comment

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

I'll just approve and merge, assuming that the timeout at #20 (comment) is harmless 🤞

@weiji14 weiji14 merged commit 82abb88 into conda-forge:main Nov 19, 2024
11 of 12 checks passed
@regro-cf-autotick-bot regro-cf-autotick-bot deleted the rebuild-pytorch25-0-1_h8acd63 branch November 19, 2024 19:24
@carterbox
Copy link
Member

We don't need to use .post in our version number because the changes post releases don't affect our builds. They are just a way for upstream to rebuild their wheels because PYPI doesn't support build numbers.

@weiji14
Copy link
Member

weiji14 commented Nov 19, 2024

Yeah, but we're pulling from PyPI, and 2.7.0 wasn't published to PyPI (see https://pypi.org/project/flash-attn/2.7.0.post2/#history). We would have needed to hardcode url: https://pypi.org/packages/source/f/flash-attn/flash_attn-{{ version }}.tar.gz to include the .post2 suffix here if keeping to the 2.7.0 version number:

{% set version = "2.7.0.post2" %}
package:
name: flash-attn-split
version: {{ version }}
source:
- url: https://pypi.org/packages/source/f/flash-attn/flash_attn-{{ version }}.tar.gz

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.

5 participants