Skip to content

Conversation

droberts195
Copy link
Contributor

As previously advised in #104087, machine learning functionality will no longer be available on macOS x86_64.

Machine learning functionality is still available on macOS by using an arm64 machine (Apple silicon). It is also possible to run Elasticsearch with machine learning functionality within a Docker container on macOS x86_64.

As previously advised in elastic#104087, machine learning functionality will no longer be available on macOS x86_64. Machine learning functionality _is_ still available on macOS by using an arm64 machine (Apple silicon). It is also possible to run Elasticsearch with machine learning functionality within a Docker container on macOS x86_64.
@elasticsearchmachine
Copy link
Collaborator

Hi @droberts195, I've created a changelog YAML for you. Note that since this PR is labelled >breaking, you need to update the changelog YAML to fill out the extended information sections.

@droberts195
Copy link
Contributor Author

DO NOT MERGE THIS PR IMMEDIATELY!

This PR should be merged to main after the branch is split for the last minor release scheduled for before December 2024. For example, suppose 8.17.0 is scheduled for release in November 2024 and 8.18.0 is scheduled for release in January 2025. Then this PR should be merged to main after the 8.17 branch is split.

One this PR is merged a followup PR should be opened against the ml-cpp repo to remove the build system for darwin-x86_64. I have confirmed that with this change in place the Elasticsearch build system works with an ml-cpp bundle that does not contain a platform/darwin-x86_64 directory. It still produces an Elasticsearch build that will run providing xpack.ml.enabled is not explicitly set to true.

After the build system for darwin-x86_64 has been removed from the ml-cpp repo, we will be able to do another PyTorch upgrade without having to worry about tweaking the build system to work on Intel macOS.

@edsavage edsavage marked this pull request as ready for review November 21, 2024 01:12
@elasticsearchmachine elasticsearchmachine added the Team:ML Meta label for the ML team label Nov 21, 2024
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/ml-core (Team:ML)

Copy link
Contributor

@valeriy42 valeriy42 left a comment

Choose a reason for hiding this comment

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

You can also remove the deprecation warning in

if ("darwin-x86_64".equals(Platforms.PLATFORM_NAME)) {
as part of this PR.

@edsavage edsavage requested a review from valeriy42 November 27, 2024 23:16
Copy link
Contributor

@edsavage edsavage left a comment

Choose a reason for hiding this comment

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

LGTM

@edsavage edsavage merged commit e54c7cf into elastic:main Nov 29, 2024
4 checks passed
edsavage added a commit to edsavage/elasticsearch that referenced this pull request Nov 29, 2024
As previously advised in elastic#104087, machine learning functionality will no longer be available on macOS x86_64. Machine learning functionality is still available on macOS by using an arm64 machine (Apple silicon). It is also possible to run Elasticsearch with machine learning functionality within a Docker container on macOS x86_64. This PR should be merged to main after the branch is split for the last minor release scheduled for before December 2024. For example, suppose 8.17.0 is scheduled for release in November 2024 and 8.18.0 is scheduled for release in January 2025. Then this PR should be merged to main after the 8.17 branch is split. One this PR is merged a followup PR should be opened against the ml-cpp repo to remove the build system for darwin-x86_64. It has been confirmed that with this change in place the Elasticsearch build system works with an ml-cpp bundle that does not contain a platform/darwin-x86_64 directory. It still produces an Elasticsearch build that will run providing xpack.ml.enabled is not explicitly set to true. After the build system for darwin-x86_64 has been removed from the ml-cpp repo, we will be able to do another PyTorch upgrade without having to worry about tweaking the build system to work on Intel macOS. --------- Co-authored-by: Ed Savage <ed.savage@elastic.co> Co-authored-by: Valeriy Khakhutskyy <1292899+valeriy42@users.noreply.github.com>
edsavage added a commit to elastic/ml-cpp that referenced this pull request Nov 29, 2024
From version 9.0.0 we drop support for macos x86_64 builds. Therefore all support for cross compiling for macos x86_64 has also been dropped. Macos builds have been migrated to be executed solely on macos 13 (Ventura) aarch64. In CI, these builds are performed on updated Orka VMs. In addition, 3rd party dependencies (boost, pytorch) are now baked into the Orka VM, so downloading these dependencies at run time is no longer required. Depends on elastic/elasticsearch#104125
edsavage added a commit that referenced this pull request Nov 29, 2024
As previously advised in #104087, machine learning functionality will no longer be available on macOS x86_64. Machine learning functionality is still available on macOS by using an arm64 machine (Apple silicon). It is also possible to run Elasticsearch with machine learning functionality within a Docker container on macOS x86_64. This PR should be merged to main after the branch is split for the last minor release scheduled for before December 2024. For example, suppose 8.17.0 is scheduled for release in November 2024 and 8.18.0 is scheduled for release in January 2025. Then this PR should be merged to main after the 8.17 branch is split. One this PR is merged a followup PR should be opened against the ml-cpp repo to remove the build system for darwin-x86_64. It has been confirmed that with this change in place the Elasticsearch build system works with an ml-cpp bundle that does not contain a platform/darwin-x86_64 directory. It still produces an Elasticsearch build that will run providing xpack.ml.enabled is not explicitly set to true. After the build system for darwin-x86_64 has been removed from the ml-cpp repo, we will be able to do another PyTorch upgrade without having to worry about tweaking the build system to work on Intel macOS. Backports #104125 --------- Co-authored-by: David Roberts <dave.roberts@elastic.co> Co-authored-by: Valeriy Khakhutskyy <1292899+valeriy42@users.noreply.github.com>
edsavage added a commit to edsavage/ml-cpp that referenced this pull request Dec 6, 2024
From version 9.0.0 we drop support for macos x86_64 builds. Therefore all support for cross compiling for macos x86_64 has also been dropped. Macos builds have been migrated to be executed solely on macos 13 (Ventura) aarch64. In CI, these builds are performed on updated Orka VMs. In addition, 3rd party dependencies (boost, pytorch) are now baked into the Orka VM, so downloading these dependencies at run time is no longer required. Depends on elastic/elasticsearch#104125
edsavage added a commit to elastic/ml-cpp that referenced this pull request Dec 9, 2024
From version 8.18.0 we drop support for macos x86_64 builds. Therefore all support for cross compiling for macos x86_64 has also been dropped. Relates elastic/elasticsearch#104125
@droberts195 droberts195 deleted the disable_ml_on_macos_x86_64 branch December 10, 2024 18:12
@samxbr
Copy link
Contributor

samxbr commented Mar 17, 2025

Friendly reminder that this PR seems to be a breaking change for 9.0, but is missing from the 9.0 release note. We may want to add an entry to the breaking change section of 9.0 release note.

@edsavage
Copy link
Contributor

Friendly reminder that this PR seems to be a breaking change for 9.0, but is missing from the 9.0 release note. We may want to add an entry to the breaking change section of 9.0 release note.

Thanks @samxbr ... We don't offer official support for any macOS platform, see https://www.elastic.co/support/matrix. So I'm not sure if this counts as a breaking change. I will raise it with the wider team to confirm.

@leemthompo
Copy link
Contributor

@droberts195 is this PR relevant to the serverless changelog? [FYI this question is based on 9.0 breaking changes]

@droberts195
Copy link
Contributor Author

@leemthompo no, this PR is not relevant for serverless

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

Labels

>breaking :ml Machine learning Team:ML Meta label for the ML team v8.18.0 v9.0.0

8 participants