Repository: pytorch
Issue: "aten::prelu" can not be used in the metal backend
Labels: oncall: mobile

### 🐛 Describe the bug

I try to use the metal model on my iPad/iPhone, but I got an error message.The error message showed that "aten::prelu" can not be used in the metal backend.

**Could not run 'aten::prelu' with arguments from the 'Metal' backend. This could be because the operator doesn't exist for this backend, or was omitted during the selective/custom build process (if using custom build). If you are a Facebook employee using PyTorch on mobile, please visit https://fburl.com/ptmfixes for possible resolutions. 'aten::prelu' is only available for these backends: [CPU, QuantizedCPU, BackendSelect, Functionalize, ADInplaceOrView, AutogradOther, AutogradCPU, AutogradCUDA, AutogradXLA, AutogradMPS, AutogradXPU, AutogradHPU, AutogradLazy].**

I converted metal compatible model with this code
```python=
import torch
import torch.nn as nn
from torch.utils.mobile_optimizer import optimize_for_mobile

class ModelPReLU(nn.Module):
    def __init__(self):
        super().__init__()
        self.network = nn.Sequential(
            nn.MaxPool2d(8,8),
            nn.PReLU(),
            nn.Flatten(),
            nn.Linear(2352, 10)
        )
    
    def forward(self, xb):
        return self.network(xb)

model = ModelPReLU()
model.eval()
example = torch.rand(1,3,224, 224)
traced_script = torch.jit.trace(model, example)
torchscript_model = optimize_for_mobile(traced_script, backend='metal')
torchscript_model._save_for_lite_interpreter(f'./metal_prelu.pt')
```

then I use the model in the following code
```objectivec=
#import "TorchModule.h"
#import <LibTorch-Lite-Nightly/LibTorch-Lite.h>

@implementation TorchModule {
 @protected
  torch::jit::mobile::Module _impl;
}

- (nullable instancetype)initWithFileAtPath:(NSString*)filePath {
  self = [super init];
  if (self) {
    try {
      _impl = torch::jit::_load_for_mobile(filePath.UTF8String);
    } catch (const std::exception& exception) {
      NSLog(@"%s", exception.what());
      return nil;
    }
  }
  return self;
}

- (NSArray<NSNumber*>*)predictImage:(void*)imageBuffer {
  try {
    c10::InferenceMode mode;
    at::Tensor tensor = torch::from_blob(imageBuffer, {1, 3, 224, 224}, at::kFloat).metal();
    auto outputTensor = _impl.forward({tensor}).toTensor().cpu();
    float* floatBuffer = outputTensor.data_ptr<float>();
    if (!floatBuffer) {
      return nil;
    }
    NSMutableArray* results = [[NSMutableArray alloc] init];
    for (int i = 0; i < 1000; i++) {
      [results addObject:@(floatBuffer[i])];
    }
    return [results copy];
  } catch (const std::exception& exception) {
    NSLog(@"%s", exception.what());
  }
  return nil;
}

@end
```

### Versions

PyTorch version: 2.2.0.dev20230925
Is debug build: False
CUDA used to build PyTorch: None
ROCM used to build PyTorch: N/A

OS: macOS 12.6.1 (x86_64)
GCC version: Could not collect
Clang version: 14.0.0 (clang-1400.0.29.202)
CMake version: Could not collect
Libc version: N/A

Python version: 3.11.5 (main, Sep 11 2023, 08:19:27) [Clang 14.0.6 ] (64-bit runtime)
Python platform: macOS-10.16-x86_64-i386-64bit
Is CUDA available: False
CUDA runtime version: No CUDA
CUDA_MODULE_LOADING set to: N/A
GPU models and configuration: No CUDA
Nvidia driver version: No CUDA
cuDNN version: No CUDA
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz

Versions
Versions of relevant libraries:
[pip3] numpy==1.25.2
[pip3] torch==2.2.0.dev20230925
[pip3] torchvision==0.15.2a0
[conda] blas                      1.0                         mkl  
[conda] mkl                       2023.1.0         h8e150cf_43559  
[conda] mkl-fft                   1.3.8                    pypi_0    pypi
[conda] mkl-random                1.2.4                    pypi_0    pypi
[conda] mkl-service               2.4.0                    pypi_0    pypi
[conda] mkl_fft                   1.3.8           py311h6c40b1e_0  
[conda] mkl_random                1.2.4           py311ha357a0b_0  
[conda] numpy                     1.25.2                   pypi_0    pypi
[conda] numpy-base                1.25.2          py311h53bf9ac_0  
[conda] pytorch                   2.2.0.dev20230925        py3.11_0    pytorch-nightly
[conda] torch                     2.2.0.dev20230925          pypi_0    pypi
[conda] torchvision               0.15.2a0                 pypi_0    pypi