Todos os produtos
Search
Central de documentação

Object Storage Service:Performance of OSS Connector in AI/ML Dataset Processing

Última atualização: Sep 22, 2026

Carregar e processar dados de forma eficiente é crucial para o treinamento de modelos em machine learning (ML) e deep learning. Este tópico compara o desempenho de carregamento de dados a partir de OssIterableDataset, OssMapDataset e conjuntos de dados criados com ossfs e ImageFolder, usando endpoints internos e endpoints acelerados pelo acelerador do OSS. Com base nos resultados dos testes de desempenho apresentados neste tópico, otimize sua estratégia de acesso a dados.

Descrição do teste

Cenários de teste: teste o desempenho de leitura de dados de conjuntos de dados usando internal endpoints e accelerated endpoints.

Dados de teste: os testes de desempenho usam aproximadamente 1 TB de 10.000.000 imagens, com tamanho médio de 100 KB.

Ambiente de teste: os testes usam uma network-enhanced general-purpose g7nex Elastic Compute Service (ECS) instance com 128 vCPUs, 512 GB de memória e 160 Gbit/s de largura de banda interna.

Conjuntos de dados: o OSS Connector for AI/ML cria os conjuntos de dados dos tipos OssIterableDataset e OssMapDataset. Já o ossfs cria o conjunto de dados do tipo ossfs com ImageFolder.

Testes de desempenho

  • Parâmetros do teste

    Parâmetro

    Valor/Operação

    Descrição

    dataloader batch size

    256

    Cada tarefa em lote processa 256 amostras.

    dataloader workers

    32

    32 processos carregam os dados em paralelo.

    transform

    trans = transforms.Compose([
        transforms.Resize(256),
        transforms.CenterCrop(224),
        transforms.ToTensor(),
        transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
    ])
    
    def transform(object):
        img = Image.open(io.BytesIO(object.read())).convert('RGB')
        val = trans(img)
        return val, object.label

    Pré-processa os dados.

  • Resultados do teste

    Conjunto de dados criado com

    Tipo de conjunto de dados

    Tempo para carregar 10 milhões de imagens pelo endpoint interno do OSS (s)

    Tempo para carregar 10 milhões de imagens pelo endpoint acelerado do OSS (s)

    OSS Connector for AI/ML

    OssIterableDataset

    2182

    2107

    OssMapDataset

    2493

    2288

    ossfs

    Ossfs with ImageFolder

    178571

    39840

Testes de desempenho de pico

  • Parâmetros do teste

    Parâmetro

    Valor/Operação

    Descrição

    dataloader batch size

    256

    Cada tarefa em lote processa 256 amostras.

    dataloader workers

    32

    32 processos carregam os dados em paralelo.

    transform

    def transform(object):
     data = object.read()
     return object.key, object.label

    Não pré-processa os dados.

  • Resultados do teste

    Conjunto de dados criado com

    Tipo de conjunto de dados

    Tempo para carregar 10 milhões de imagens pelo endpoint interno do OSS (s)

    Tempo para carregar 10 milhões de imagens pelo endpoint acelerado do OSS (s)

    OSS Connector for AI/ML

    OssIterableDataset

    100

    81

    OssMapDataset

    176

    127

Análise dos dados de desempenho

Na leitura de dados dos conjuntos de dados, o OssIterableDataset e o OssMapDataset oferecem desempenho significativamente superior ao dos conjuntos de dados criados com ossfs e ImageFolder. Especificamente, são cerca de 80 vezes mais rápidos sem o acelerador do OSS e aproximadamente 18 vezes mais rápidos com o acelerador do OSS. Os testes de desempenho demonstram que o OSS Connector for AI/ML melhora de forma expressiva a velocidade de processamento de dados e a eficiência do treinamento de modelos.

Ler dados do OssIterableDataset e do OssMapDataset com o acelerador do OSS ativado é cerca de 1,4 vezes mais rápido do que ler com o acelerador desativado. Mesmo sem o acelerador do OSS, o OSS Connector for AI/ML lida com acessos altamente simultâneos e com alta largura de banda. Combinar o OSS Connector for AI/ML com o acelerador do OSS proporciona desempenho ainda mais robusto.

Conclusão

Use o OSS Connector for AI/ML no seu código Python para transmitir objetos do OSS por streaming. O OSS Connector for AI/ML aumenta a velocidade de leitura de dados e é adequado para a maioria dos cenários de treinamento de modelos. Para obter desempenho ainda maior no processamento de dados, use o OSS Connector for AI/ML junto com o acelerador do OSS.