Re: [Biopython] [ext] Re: A possibility for speeding up FASTA/FASTQ reading in BioPython
Peter Cock <[email protected]> Wed, 26 Nov 2025 09:38:33 +0000
| Newsgroups | gmane.comp.python.bio.general |
|---|---|
| Message-ID | <CAKVJ-_5Cx2JXps8q=CthzPZRQ5N2GK2F1uriCAhw9NVGwsP=9w@mail.gmail.com> |
SGkgVGVycnksCgpUaGF0J3MgYSB2ZXJ5IGV2ZW4gaGFuZGVkIHJlcGx5LiBJIGhhZG4ndCBjb25z aWRlcmVkIHNwZWFraW5nIHRvIEFJCnRvb2xzIHdpdGggVm9pY2UgcmVjb2duaXRpb24sIGJ1dCBB bWF6b24gQWxleGEgaXNuJ3QgZ3JlYXQgYW5kIGhhcwpwcm9iYWJseSBsb3dlcmVkIG15IGV4cGVj dGF0aW9ucyAtIGdyaW4uCgpUaGUgU2VxUmVjb3JkIG92ZXJoZWFkIGlzIGJpZywgZXNwZWNpYWxs eSBtYWtpbmcgdGhlIEFTQ0lJIHF1YWxpdHkKc3RyaW5nIGludG8gYSBsaXN0IG9mIGludGVnZXJz LiBZb3Ugb2Z0ZW4gZG9uJ3QgbmVlZCB0aGlzLCBhbmQgY2FuCnN0aWNrIHdpdGggc3RyaW5ncy4g U2VlIGVnOgoKaHR0cHM6Ly93d3cub3Blbi1iaW8ub3JnLzIwMDkvMDkvMjUvYmlvcHl0aG9uLWZh c3QtZmFzdHEvCgpJbiB0aGUgc2hvcnQgdGVybSwgYSBtdWNoIGVhc2llciBleHBlcmltZW50IHRv IHRyeSBpcyBzd2l0Y2hpbmcgb3VyClB1cmUgUHl0aG9uIEZBU1RRIHBhcnNlciB0byB3b3JrIGlu IGJ5dGVzIG1vZGUgKGJpbmFyeSBoYW5kbGVzKSB0bwphdm9pZCB0aGUgYnl0ZXMgdG8gdW5pY29k ZSBjb252ZXJzaW9uIG9mIHRoZSBzZXF1ZW5jZSBhbmQgcXVhbGl0eQpzdHJpbmdzLgoKUGV0ZXIK Ck9uIFR1ZSwgTm92IDI1LCAyMDI1IGF0IDc6NTbigK9QTSBKb25lcyBLZWxseSwgVGVyZW5jZSBD YXJsZXRvbgo8dGVyZW5jZS5qb25lc0BjaGFyaXRlLmRlPiB3cm90ZToKPgo+IEhpIGFsbAo+Cj4g VGhhbmtzIGZvciB0aGUgcmVwbGllcyBhbmQgSSdtIHNvcnJ5IHRvIGJlIHNvIHNsb3cgaW4gcmVw bHlpbmcuCj4KPiBQZXRlciAtIEnigJltIHNjZXB0aWNhbCwgdG9vLiAgSSB0aG91Z2h0IGl0IGhp Z2hseSB1bmxpa2VseSB0aGF0IEJpb1B5dGhvbiB3b3VsZCB3YW50IHRvIGFkZCBhIGRlcGVuZGVu Y2Ugb24gUnVzdC4gVGhlIEMgY29kZSBjb3VsZCBiZSB1c2VkIHRvIGdldCB0aGUgc2FtZSBzcGVl ZC11cC4gVGhlIGF1dG9tYXRpYyBkZXRlY3Rpb24gb2YgY29tcHJlc3NlZCBpbnB1dCAoaW5jbHVk aW5nIG9uIHN0ZGluKSB3b3VsZCBiZSBsb3N0LCBidXQgcGVyaGFwcyBjb3VsZCBiZSBhZGRlZC4g IERhbiAtIG1heWJlIENsYXVkZSBjb3VsZCBtYWtlIHRoZSBjaGFuZ2VzIGZvciBhIHByLiBJIHdv dWxkbuKAmXQgYmUgc3VycHJpc2VkLCBldmVuIHdpdGggc3VjaCBhIGxhcmdlIGNvZGViYXNlLgo+ Cj4gUmVnYXJkaW5nIHRoZSB3aWRlciBwb2ludHMgbWFkZSBieSBQZXRlciBpbiBoaXMgYmxvZyBw b3N0LCBJIGFncmVlIHdpdGggcHJvYmFibHkgYWxsIG9mIGl0LiBJIGhpZ2hseSBkb3VidCB0aGF0 IHRoZSBjdXJyZW50IHRyYWplY3RvcnkgKGluIHRlcm1zIG9mIGVuZXJneSB1c2UpIG9mIHRoZXNl IHRvb2xzIGlzIHN1c3RhaW5hYmxlLCBhbmQgSSByZWd1bGFybHkgd29uZGVyIGFib3V0IGFjdHVh bCBjb3N0ICh0byB0aGUgcGxhbmV0KSBJIGFtIGluY3VycmluZyB3aGVuIHVzaW5nIENsYXVkZSwg ZXNwZWNpYWxseSB3aGVuIGl04oCZcyBkb2luZyBzb21ldGhpbmcgSSBjb3VsZCBkbyBpbiBlbWFj cyBvciB3aXRoIGUuZy4sIGEgcGVybCBvbmUtbGluZXIuIEJ1dCBJIGdldCBzdHVmZiBkb25lIGFi b3V0IDIweCBhcyBmYXN0IHdoZW4gdXNpbmcgQ2xhdWRlLCBhbmQgSSBqdXN0IHNwZWFrIHRvIGl0 ICh1c2luZyBEaWN0YXRpb24gb24gT1MgWCksIGJhcmVseSB0eXBpbmcgYSB0aGluZy4gVGhhdOKA mXMgYWxsIGFuIGluY3JlZGlibGUgY2hhbmdlIGFmdGVyIDQwKyB5ZWFycyBvZiBoYXZpbmcgdG8g Z2V0IHRob3VnaHRzIG91dCBvZiBteSBicmFpbiBhbmQgaW50byB0aGUgY29tcHV0ZXIgb25lIGtl eXN0cm9rZSBhdCBhIHRpbWUuIEl0IGZlZWxzIGxpa2UgbWFnaWMuIEJVVCwgSSBoYXZlIHRvIHdh dGNoIENsYXVkZSB2ZXJ5IGNhcmVmdWxseSwgbG9vayBhdCBpdHMgY29kZSwgbWFrZSBpdCB3cml0 ZSBtYW55IHRlc3RzIGFuZCBleHBsaWNpdGx5IHByb3ZlIHRoYXQgaXQgaGFzIG1hbmFnZWQgdG8g ZG8gd2hhdCB3YXMgaW50ZW5kZWQuIFRoYXTigJlzIG5vdCBzbyBkaWZmZXJlbnQgZnJvbSB3YXRj aGluZyB5b3Vyc2VsZiBvciBkb2luZyBjb2RlIHJldmlldyBvZiBhIGp1bmlvciAodmVyeSBlbmVy Z2V0aWMgZXZlci1jaGVlcmZ1bCkgcHJvZ3JhbW1lci4KPgo+IEkgYWdyZWUgdGhhdCBhbiBBSSAo Q2xhdWRlLCBjZXJ0YWlubHkpIGNvdWxkIGJlIHVzZWQgdG8gdmVyeSBxdWlja2x5IG1ha2UgZ2Vu ZXJhbCBpbXByb3ZlbWVudHMgdG8gYSBjb2RlYmFzZSB3aXRoIHZlcnkgbGl0dGxlIHJpc2sgKGFz c3VtaW5nIGEgdGVzdCBzdWl0ZSBleGlzdHMpLiBJ4oCZdmUgZG9uZSB0aGF0IHF1aXRlIGEgZmV3 IHRpbWVzLCBlLmcuLCB0ZWxsaW5nIENsYXVkZSBJIG5vIGxvbmdlciBuZWVkIHN1cHBvcnQgZm9y IFB5dGhvbiAzLlggYW5kIHRvIG1vZGVybmlzZSB0aGUgdHlwaW5nIGhpbnRzIGZvciAzLlgrMSwg b3IgdG8gYWRkIHR5cGluZyBoaW50cywgZXRjLiAgSXTigJlzIGFsc28gZ29vZCBhdCBwcm9kdWNp bmcgZG9jdW1lbnRhdGlvbi4KPgo+IEnigJltIG5vdCBzdXJlIHdoZXJlIHRoaXMgbGVhdmVzIHVz LiAgSWYgdGhlcmXigJlzIGFncmVlbWVudCB0aGF0IGEgQyBleHRlbnNpb24gd291bGQgYmUgZ29v ZCB0byBoYXZlLCB0aGUgb25lIENsYXVkZSBtYWRlIGZvciBteSBwcnNlcSBwcm9qZWN0IGJlbmNo bWFyayBzdWl0ZSBpcyB0ZXN0ZWQgYW5kIGNvdWxkIGJlIHVzZWQuIEkgaGF2ZW7igJl0IGxvb2tl ZCBhdCB0aGUgQmlvUHl0aG9uIGNvZGUgY2xvc2VseSBlbm91Z2ggdG8ga25vdyBob3cgbXVjaCB3 b3JrIHRoYXQgd291bGQgYmUsIHRob3VnaC4KPgo+IFRoYW5rcyBhZ2FpbiBmb3IgdGhlIHRob3Vn aHRmdWwgcmVwbGllcy4gVGhlcmUgd2FzIGFuIGVhcmxpZXIgb25lIGFza2luZyB3aHkgdGhlIEJp b1B5dGhvbiBjb2RlIHdhcyBzbG93ZXIgdGhhbiBDbGF1ZGXigJlzIG1pbmltYWwgcHVyZSBQeXRo b24sIGFuZCBzdWdnZXN0aW5nIHRoYXQgd291bGQgYmUgZHVlIHRvIHRoZSBvdmVyaGVhZCBvZiBt YWtpbmcgU2VxUmVjb3Jkcy4gSSB0aGluayB0aGF0IG11c3QgYmUgdGhlIGNhc2UuIFRoZSBpbXBh Y3QgaXMgbXVjaCBtb3JlIHNldmVyZSB3aXRoIEZBU1RRIHRoYW4gRkFTVEEsIHNvIEkgZ3Vlc3Mg ZGVhbGluZyB3aXRoIHRoZSBxdWFsaXR5IHN0cmluZ3MgbXVzdCBiZSBxdWl0ZSBleHBlbnNpdmUu Cj4KPiBCZXN0LAo+IFRlcnJ5Cj4KPiBGcm9tOiBQZXRlciBDb2NrIDxwLmouYS5jb2NrQGdvb2ds ZW1haWwuY29tPgo+IERhdGU6IE1vbmRheSwgMjQuIE5vdmVtYmVyIDIwMjUgYXQgMTA6NDEKPiBU bzogSm9uZXMgS2VsbHksIFRlcmVuY2UgQ2FybGV0b24gPHRlcmVuY2Uuam9uZXNAY2hhcml0ZS5k ZT4KPiBDYzogYmlvcHl0aG9uQGJpb3B5dGhvbi5vcmcgPGJpb3B5dGhvbkBiaW9weXRob24ub3Jn Pgo+IFN1YmplY3Q6IFtleHRdIFJlOiBbQmlvcHl0aG9uXSBBIHBvc3NpYmlsaXR5IGZvciBzcGVl ZGluZyB1cCBGQVNUQS9GQVNUUSByZWFkaW5nIGluIEJpb1B5dGhvbgo+Cj4gSGVsbG8gVGVycnks Cj4KPiBJIGp1c3QgcG9zdGVkIGEgYmxvZyBhYm91dCBteSB0aG91Z2h0cyBvbiByZWNlaXZpbmcg Z2VuZXJhdGl2ZSBBSQo+IGNvbnRyaWJ1dGlvbnMgYXMgYW4gT3BlbiBTb3VyY2UgcHJvamVjdCBt YWludGFpbmVyOgo+Cj4gaHR0cHM6Ly9ibGFzdGVkYmlvLmJsb2dzcG90LmNvbS8yMDI1LzExL3Ro b3VnaHRzLW9uLWdlbmVyYXRpdmUtYWktY29udHJpYnV0aW9ucy5odG1sCj4KPiBJIGFtIHNjZXB0 aWNhbCwgYW5kIGluIHRoaXMgY2FzZSBhZGRpbmcgYSBSdXN0IGRlcGVuZGVuY3kgdG8gQmlvcHl0 aG9uCj4gc2VlbXMgdG9vIG11Y2ggdG8gYXNrLiBJIHRoaW5rIHlvdSBjb3VsZCBnZXQgc2ltaWxh ciBwZXJmb3JtYW5jZSBnYWlucwo+IHdpdGggQyAod2hpY2ggd2UgZG8gdXNlKSB3aGVyZSBhdCBs ZWFzdCB0aGUgbWFpbnRhaW5lcnMgaGF2ZSBzb21lCj4gZXhwZXJpZW5jZS4gSG93ZXZlciwgZXZl biB0aGVyZSwgZ2FpbnMgbWF5IG5vdCBtYWtlIHRoZSBhZGRpdGlvbmFsCj4gY29tcGxleGl0eSBh bmQgbWFpbnRlbmFuY2UgYnVyZGVuIHdvcnRod2hpbGUuCj4KPiBUaGFuayB5b3UgZm9yIHdyaXR0 aW5nIGFuZCBhc2tpbmcsIHJhdGhlciB0aGFuIHN1cHJpc2luZyBldmVyeW9uZSB3aXRoCj4gYSBs YXJnZSBwdWxsIHJlcXVlc3QuCj4KPiBQZXRlcgo+Cj4gUC5TLiBDcm9zcyByZWZlcmVuY2UgaHR0 cHM6Ly9naXRodWIuY29tL2Jpb3B5dGhvbi9iaW9weXRob24vcHVsbC81MDg1Cj4KPiBPbiBUdWUs IE5vdiAxMSwgMjAyNSBhdCAxMDowMOKAr1BNIEpvbmVzIEtlbGx5LCBUZXJlbmNlIENhcmxldG9u Cj4gPHRlcmVuY2Uuam9uZXNAY2hhcml0ZS5kZT4gd3JvdGU6Cj4gPgo+ID4gSGkgYWxsCj4gPgo+ ID4gSSByZWd1bGFybHkgcHJvY2VzcyByZWFzb25hYmx5IGxhcmdlIEZBU1RRIChodW5kcmVkcyBv ZiBiaWxsaW9ucyBvZiBzZXF1ZW5jaW5nIHJlYWRzKSBhbmQgRkFTVEEgZmlsZXMgdXNpbmcgQmlv UHl0aG9uLiBGb3Igc29tZSB5ZWFycyBJJ3ZlIGJlZW4gbWVhbmluZyB0byBpbXBsZW1lbnQgYSBG QVNUUS9GQVNUQSByZWFkZXIgaW4gYSBjb21waWxlZCBsYW5ndWFnZSBhbmQgYWRkIFB5dGhvbiBi aW5kaW5ncyB0byBpbXByb3ZlIHRoZSBzcGVlZC4gSSBjb3VsZCd2ZSBkb25lIHRoaXMgaW4gQyBi dXQgSSBzcGVudCBzb21lIGRlY2FkZXMgd3JpdGluZyBDIGFuZCBJIHdhbnRlZCB0byBsZWFybiBz b21ldGhpbmcgbmV3LCBzbyBJIGNvbnNpZGVyZWQgYSBmZXcgbGFuZ3VhZ2VzLiBCZWNhdXNlIFJ1 c3QgbWFrZXMgaXQgdmVyeSBlYXN5IHRvIGNyZWF0ZSBQeXRob24gYmluZGluZ3MsIEkgZGVjaWRl ZCB0byBnaXZlIGl0IGEgdHJ5LiBJIHRob3VnaHQgSSdkIGdldCBnb2luZyBieSBhc2tpbmcgdGhl IENsYXVkZSBDTEkgdG8gd3JpdGUgbWUgc29tZSBSdXN0LiBUaGF0IHR1cm5lZCBvdXQgdG8gYmUg YSBtdWNoLCBtdWNoIGJldHRlciBleHBlcmllbmNlIHRoYW4gSSBoYWQgYW50aWNpcGF0ZWQuIFdp dGggQ2xhdWRlIEkgcGxheWVkIHdpdGggc2V2ZXJhbCBpbXBsZW1lbnRhdGlvbnMsIGtlZXBpbmcg dHJhY2sgb2YgdGltaW5nLiBDbGF1ZGUgYWxzbyB3cm90ZSBzb21lIHRlc3RzLiBUbyBjb21wYXJl IHdoYXQgSSB3YXMgc2VlaW5nIEkgZ290IENsYXVkZSB0byB3cml0ZSBhIHB1cmUgUHl0aG9uIHZl cnNpb24sIGEgcHVyZSBDIHZlcnNpb24sIFB5dGhvbiBiaW5kaW5ncyB0byB0aGUgQywgYW5kIHRv IGNyZWF0ZSBhIGJlbmNobWFyayBzdWl0ZS4gRnJvbSB3aGF0IEkgY2FuIHRlbGwsIHRoZSBSdXN0 L1B5dGhvbiAoYW5kIHRoZSBDL1B5dGhvbikgRkFTVEEgcmVhZGluZyBpcyB0d2ljZSBhcyBmYXN0 IGFzIEJpb1B5dGhvbiBhbmQgRkFTVFEgcmVhZGluZyBpcyBmb3VyIHRpbWVzIGFzIGZhc3QuIEkg ZGlkbid0IHdyaXRlIGEgc2luZ2xlIGxpbmUgb2YgY29kZS4gSSBqdXN0IGRpZCBzb21lIG1pbmlt YWwgY2xlYW5pbmcgdXAgd2hlbiB0aGluZ3Mgd2VyZSBhbHJlYWR5IGZhciBhbG9uZy4gSSd2ZSBi ZWVuIHVzaW5nIHRoZSBjb2RlIGZvciB0aGUgbGFzdCBtb250aCBvciB0d28gd2l0aCBubyBwcm9i bGVtcy4KPiA+Cj4gPiBUaGUgcmVwbyBpcyBhdCBodHRwczovL2dpdGh1Yi5jb20vVmlyb2xvZ3lD aGFyaXRlL3Byc2VxICAocHJzZXEgPSBQeXRob24vUnVzdCBmb3Igc2VxdWVuY2VzKS4gWW91J2xs IGZpbmQgdGhlIGJlbmNobWFyayByZXN1bHRzIG9uIHRoYXQgcGFnZS4gIFRoZXJlIGFyZSBzdGls bCBzb21lIHNtYWxsIHRoaW5ncyBJIHdvdWxkIGFkanVzdCBpbiB0aGUgQVBJLiAgQlRXLCBDbGF1 ZGUgYWxzbyB3cm90ZSB0aGUgUkVBRE1FICh3aGljaCBzaG91bGQgZGVmaW5pdGVseSBiZSBpbXBy b3ZlZCkuCj4gPgo+ID4gSSBhbSB3b25kZXJpbmcgaWYgdGhlcmUgbWlnaHQgYmUgaW50ZXJlc3Qg aW4gaW5jb3Jwb3JhdGluZyB0aGlzIGludG8gQmlvUHl0aG9uLiBJIGRvbid0IGtub3cgaWYgdGhl cmUgYXJlIGFueSBSdXN0IGRlcGVuZGVuY2llcyBpbiBCaW9QeXRob24gYnV0IEkga25vdyB0aGF0 IHRoZXJlIGFyZSBzb21lIEMgZXh0ZW5zaW9ucy4gV2UgY291bGQgdXNlIGVpdGhlciwgYXMgdGhl aXIgc3BlZWRzIGFyZSBjb21wYXJhYmxlLiBJZiB0aGVyZSdzIGludGVyZXN0LCBJJ2QgYmUgaGFw cHkgdG8gaGVscCAob3IgdG8gZG8gaXQgYWxsLCBhZnRlciBzb21lIGRpc2N1c3Npb24gYW5kIG1h eWJlIHdpdGggc29tZSBndWlkYW5jZSkuCj4gPgo+ID4gVGhhbmtzIHZlcnkgbXVjaCBmb3IgYWxs IHRoZSB3b3JrIG9uIEJpb1B5dGhvbi4gSXQncyByZWFsbHkgYmVlbiBhIHBsZWFzdXJlIHRvIHVz ZSB0aGUgY29kZSBvdmVyIHRoZSBsYXN0IGRvemVuIHllYXJzIG9yIHNvLgo+ID4KPiA+IFRlcnJ5 IEpvbmVzCj4gPgo+ID4KPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCj4gPiBCaW9weXRob24gbWFpbGluZyBsaXN0ICAtICBCaW9weXRob25AYmlvcHl0 aG9uLm9yZwo+ID4gaHR0cHM6Ly9tYWlsbWFuLm9wZW4tYmlvLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2Jpb3B5dGhvbgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpCaW9weXRob24gbWFpbGluZyBsaXN0ICAtICBCaW9weXRob25AYmlvcHl0aG9uLm9yZwpodHRw czovL21haWxtYW4ub3Blbi1iaW8ub3JnL21haWxtYW4vbGlzdGluZm8vYmlvcHl0aG9uCg==