Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- "cells": [
- {
- "cell_type": "code",
- "execution_count": 1,
- "metadata": {
- "collapsed": true{
- "cells": [
- {
- "cell_type": "code",
- "execution_count": 1,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": [
- "import numpy as np\n",
- "import faiss"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 2,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": [
- "index = faiss.index_factory(128, \"IVF52428_HNSW32,PQ64\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": [
- "# train \n",
- "xt = faiss.rand((100000 ,128))\n",
- "index.train(xt)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 5,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": [
- "# initial add\n",
- "x = faiss.rand((130000, 128))\n",
- "index.add(x)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 8,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "index size 280000, mem usage 547.32 MiB\r"
- ]
- }
- ],
- "source": [
- "# add 150k by batches of 100, monitor mem usage\n",
- "log = []\n",
- "for na in range(0, 150000, 100): \n",
- " x = faiss.rand((100, 128), seed=na * 12345)\n",
- " index.add(x)\n",
- " mem = faiss.get_mem_usage_kb()\n",
- " print('index size %d, mem usage %.2f MiB' % (index.ntotal, mem / 1024.), end='\\r', flush=True)\n",
- " log.append((index.ntotal, mem))"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 13,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "87.8221747831888"
- ]
- },
- "execution_count": 13,
- "metadata": {
- "bento_obj_id": "140247899674688"
- },
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# added bytes per vector\n",
- "\n",
- "n0, mem0 = log[0]\n",
- "n1, mem1 = log[-1]\n",
- "\n",
- "(mem1 - mem0) * 1024 / (n1 - n0)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "bento_stylesheets": {
- "bento/extensions/flow/main.css": true,
- "bento/extensions/kernel_selector/main.css": true,
- "bento/extensions/kernel_ui/main.css": true,
- "bento/extensions/new_kernel/main.css": true,
- "bento/extensions/system_usage/main.css": true,
- "bento/extensions/theme/main.css": true
- },
- "kernelspec": {
- "display_name": "faiss",
- "language": "python",
- "name": "bento_kernel_faiss"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.6.3rc1+"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
- }
- },
- "outputs": [],
- "source": [
- "import numpy as np\n",
- "import faiss"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 2,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": [
- "index = faiss.index_factory(128, \"IVF52428_HNSW32,PQ64\")"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": [
- "# train \n",
- "xt = faiss.rand((100000 ,128))\n",
- "index.train(xt)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 5,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": [
- "# initial add\n",
- "x = faiss.rand((130000, 128))\n",
- "index.add(x)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 8,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "index size 280000, mem usage 547.32 MiB\r"
- ]
- }
- ],
- "source": [
- "# add 150k by batches of 100, monitor mem usage\n",
- "log = []\n",
- "for na in range(0, 150000, 100): \n",
- " x = faiss.rand((100, 128), seed=na * 12345)\n",
- " index.add(x)\n",
- " mem = faiss.get_mem_usage_kb()\n",
- " print('index size %d, mem usage %.2f MiB' % (index.ntotal, mem / 1024.), end='\\r', flush=True)\n",
- " log.append((index.ntotal, mem))"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 13,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "87.8221747831888"
- ]
- },
- "execution_count": 13,
- "metadata": {
- "bento_obj_id": "140247899674688"
- },
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# added bytes per vector\n",
- "\n",
- "n0, mem0 = log[0]\n",
- "n1, mem1 = log[-1]\n",
- "\n",
- "(mem1 - mem0) * 1024 / (n1 - n0)"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "metadata": {
- "collapsed": true
- },
- "outputs": [],
- "source": []
- }
- ],
- "metadata": {
- "bento_stylesheets": {
- "bento/extensions/flow/main.css": true,
- "bento/extensions/kernel_selector/main.css": true,
- "bento/extensions/kernel_ui/main.css": true,
- "bento/extensions/new_kernel/main.css": true,
- "bento/extensions/system_usage/main.css": true,
- "bento/extensions/theme/main.css": true
- },
- "kernelspec": {
- "display_name": "faiss",
- "language": "python",
- "name": "bento_kernel_faiss"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.6.3rc1+"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement