apache / incubator-pagespeed-ngx

Automatic PageSpeed optimization module for Nginx
http://ngxpagespeed.com/
Apache License 2.0
4.37k stars 365 forks source link

Supporting pagespeed on ARM devices? #1213

Open trefase opened 8 years ago

trefase commented 8 years ago

Is there any further plans on adding support for arm devices with ngx_pagespeed?

I think that theres s a growing demand with more and more providers selling and hosting servers based on the arm architecture..

hillsp commented 8 years ago

We don't currently have plans to support ARM mostly because I don't think we've especially been peppered with requests for it.

We have a lot of library dependencies and I imagine at least some of them don't support ARM, which makes this a lot more painful.

bugsbyteyou commented 7 years ago

Will there be a mod_pagespeed supported for armhf? I am running a webserver on my Pi and would be great to have pagespeed there. with IoT and these ARM System on chip there will be more and more people requesting this

nachoparker commented 7 years ago

+1 here, I am interested in trying this with NextCloudPi

jposemescouilles commented 6 years ago

I too am running a webserver on a Pi-like board and would be really interested in having this module.

georges-2000 commented 6 years ago

+1 im interested in this module

ashik-codes commented 6 years ago

+1 It would be a really nice thing to have

thegr33nhornet commented 5 years ago

+1 ARM based servers are becoming much more mainstream.

FalcoGer commented 5 years ago

I to would like this to work on armv7 and armv8 (64bit) for a raspberry running apache.

L422Y commented 5 years ago

+1 really would be nice

petter5 commented 4 years ago

+1 would love to have pagespeed for the pi4 - Raspbian - tried the Automated Install build from source, but no sucess,,,

ashik-codes commented 4 years ago

Yeah that would be the best thing ever. 💓

On Thu, Dec 12, 2019, 3:33 AM petter5 notifications@github.com wrote:

+1 would love to have pagespeed for the pi4 - Raspbian - tried the Automated Install build from source, but no sucess,,,

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/apache/incubator-pagespeed-ngx/issues/1213?email_source=notifications&email_token=AEWWTVEO54RX5BBWUQIPUV3QYFMBVA5CNFSM4CGPPH72YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGUUSXA#issuecomment-564742492, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEWWTVA5B6PTGFBDYCPMA53QYFMBVANCNFSM4CGPPH7Q .

pilfs commented 4 years ago

I have ngx_pagespeed running on aarch64 and armv7l.

You can find the PSOL binaries and instructions here:

https://gitlab.com/gusco/ngx_pagespeed_arm

I believe we are about to see ARM grow in the server space this year, thought it would be a shame for ngx_pagespeed to miss out.

jmarantz commented 4 years ago

nice! would you consider upstreaming your work to https://github.com/apache/incubator-pagespeed-mod ?

On Sun, May 10, 2020 at 7:07 PM Linux From Scratch on the Raspberry Pi < notifications@github.com> wrote:

I have ngx_pagespeed running on aarch64 and armv7l.

You can find the PSOL binaries and instructions here:

https://gitlab.com/gusco/ngx_pagespeed_arm

I believe we are about to see ARM grow in the server space this year, thought it would be a shame for ngx_pagespeed to miss out.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/apache/incubator-pagespeed-ngx/issues/1213#issuecomment-626403751, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAO2IPMRTPQJEDMVG72M3PLRQ4XULANCNFSM4CGPPH7Q .

jsrz commented 4 years ago

I tried @pilfs instructions and can verify that they do work. I tried it out on an AWS m6g instance.

That said, a few other things to note:

All of that said, I think pilfs changes should be merged to get the Arm support in.

Firegarden commented 4 years ago

I too tried @pilfs instructions and they helped me move forward with my AWS M6g Arm instance. The concern I have is getting PSOL to build from source without needing the patch. For example a new version of pagespeed was released recently (1.14.36.1) and I am not sure if the arm patches are compatible.

Come on people AWS no longer supports x86 on their latest generation of boxes. This problem is not going away - can we pretty please solve this?

Firegarden commented 4 years ago

This problem is not going away - can we pretty please solve this?

oschaaf commented 4 years ago

@Firegarden I'd be happy to review pull requests related to this. Probably best to land this on branch 36 (corresponding to the 1.14.X releases).

TLA020 commented 3 years ago

Same issue here, trying to build a webserver on pi4 8gb, for some testing / tweaking.

adding module in ../incubator-pagespeed-ngx-latest-stable Architecture not supported: armv7l Any news?

Preen commented 3 years ago

+1

Dade88 commented 3 years ago

Totally needed on new AWS servers.

Preen commented 3 years ago

yeah thats the case for me... dang

adhasahar97 commented 3 years ago

Our whole infra is on AWS Graviton processor (arm64). Totally need it

shauke commented 3 years ago

How about the Apple Silicon processors. ARM support would be very helpful for the growing number of developers on the new M1 devices as well. I currently fail in building a docker image for development on a M1 Mac because of the missing ngx_pagespeed ARM support. 😢 https://github.com/intershop/intershop-pwa/blob/develop/nginx/Dockerfile#L4-L5 It would be great if this could work as nicely as for the other platforms. 👍

Dade88 commented 3 years ago

I am afraid the project isn't being developed at the rate it should, surely because Google seems to have lost interest in the project, and we can see the latest stable release was released almost 1 year ago.

Having this in mind, I found other viable solutions to achieve some features of PageSpeed. For example, minification can be achieved by PHP (there's even an older nignx perl module); if done properly, you can even gz or br the files to squeeze even more performance. Removing images metadata can be done server side with programs like EXIFTool. Same applies for WebP images and many other features.

The main problem with this approach is you must find and tune every solution for your webserver. I am thinking about creating a repository to group solutions and solve this mess.

DISCLAIMER: This is by no means a message intended to offend devs or trying to push things out of nowhere. All the work done so far is much appreciated.

jmarantz commented 3 years ago

Please see https://groups.google.com/g/mod-pagespeed-discuss/c/SYx1nOS6HsE/m/4kkGpZ_3AgAJ TL;DR mod_pagespeed is in the hands of volunteers and is now incubating at the Apache Software Foundation. Volunteers welcome, particularly if there is a feature or platform you want supported.

Danrancan commented 2 years ago

I can second a vote for an arm version (specifically for raspberry pi 4). I am running a webserver off of nginx on a raspi, and definitely need to be sure that I can get Pagespeed working on it in the future. Any places where I can petition developers to add this into the pagespeed roadmap?

Danrancan commented 2 years ago

https://gitlab.com/gusco/ngx_pagespeed_arm

@pilfs I also got this running on my raspberry Pi 4 using the nginx mainline version 1.21.5. Thanks a ton for this! Is there anything that I should consider or be worried about since I'm using nginx mainline 1.21.5? Do you keep the code for this up to date? Sorry if it sounds like a noob question. I'm most likely still a noob!

Danrancan commented 2 years ago

Is there any further plans on adding support for arm devices with ngx_pagespeed?

I think that theres s a growing demand with more and more providers selling and hosting servers based on the arm architecture..

I wrote a tutorial to compile the pagespeed module for the Raspberry Pi 4 and Raspberry Pi 3 (aarch64 ARM) based on @pilfs work and instructions, as well as instructions from linuxbabe.com. Both instruction sets have been modified to compile the Pagespeed Module for Nginx-1.21.6. Feel free to check it out and report back anything that doesn't work properly.

Tutorial is HERE: https://nerd-tech.net/2022/01/26/how-to-compile-and-ngx_pagespeed-nginx-pagespeed-module-for-arm-architecture-on-the-raspberry-pi-4-or-any-other-aarch64-devices-running-ubuntu-server-20-04/

Danrancan commented 1 year ago

We don't currently have plans to support ARM mostly because I don't think we've especially been peppered with requests for it.

We have a lot of library dependencies and I imagine at least some of them don't support ARM, which makes this a lot more painful.

I believe the only thing incompatible with arm is that there are no arm PSOL libraries other than , which is believe are outdated. I have successfully compiled pagespeed on Ubuntu Server for the Raspberry Pi 4 using these aarch64 PSOL libraries, but I don't quite understand the repercussions of using these outdate libraries. Do you know if there is any way to compile updated arm64 versions of the PSOL libraries myself to include in pagespeed during ps compilation? If you have any ideas, please let me know. Otherwise, consider this post me peppering you with requests for an ARM compatible pagespeed module.